Tag:

Docker容器中Sailsjs应用程序的问题

在容器中运行Sails应用程序(Node.js)有两个问题。 我的容器有一个与nodejs安装的Dockerfile,像这样 FROM ubuntu:14.04 RUN apt-get update && apt-get install -y \ autoconf \ build-essential \ imagemagick \ libbz2-dev \ libcurl4-openssl-dev \ libevent-dev \ libffi-dev \ libglib2.0-dev \ libjpeg-dev \ libmagickcore-dev \ libmagickwand-dev \ libmysqlclient-dev \ libncurses-dev \ libpq-dev \ libreadline-dev \ libsqlite3-dev \ libssl-dev \ libxml2-dev \ libxslt-dev \ libyaml-dev \ zlib1g-dev \ rbenv […]

javascript:canvas上的图像(背景)

所以我的问题是我不能先画背景,然后在背景上画一切。 在我的代码中的一些地方(在循环function),它的工作原理,但在我的初始化函数不。 先介绍一下我的代码: 代码获取背景img并绘制它: function imgImport(imgName,ctx){ var img = new Image(); img.onload = function(){ ctx.drawImage(img,0,0); }; img.src = 'client/img/' + imgName + '.jpg'; } module.exports = imgImport; 很酷,现在在我的初始化函数我使用上面的代码是这样的: // var img = new Image(); // img.src = 'client/img/spaceship.jpg'; // ctx.drawImage(img,0,0); Img('spaceship',ctx); drawGrayzonePlanets(ctx,serverObjects); 现在不要介意3条注释行。 第一个活动行Img('spaceship',ctx):是通过nodejs使用的上述imgImport函数。 DrawGrayzonePlanets如下所示: function drawGrayzonePlanets(ctx,serverObjects){ for(object in serverObjects){ obj = serverObjects[object]; Drawobjects(ctx,obj); } […]

HTTP请求stream程图

我build立一个Web应用程序。 当我开始logging我的应用程序时,我正在寻找一种方式来描述用户访问网站的方式。 例如:授权的方式。 用户访问任何URL ./*,那么如果用户有一个有效的证书,他将被redirect到注册页面,否则他将被redirect到未经授权的页面。 在我浏览过已知的图表(编程stream程图,顺序图)之后,我不知道其他图表能够描述给定的场景吗?

定向非循环图中所有节点的可达性计数

所以在Hackerrank上的一个名为“Acyclic Graph”的编程竞赛中遇到了这个挑战,这个挑战基本归结为计算“定向非循环图”中每个节点可到达的节点数量。 例如,假设你有这样一个图表: [ 1 ] —->[ 2 ]—>[ 4 ]—>[ 5 ] [ 3 ] ——/ 可达性计数(包括原始节点): Node 1: 4 Node 2: 3 Node 3: 4 Node 4: 2 Node 5: 1 我的方法是“深度优先”穿越记忆。 四周看了很多,但似乎运行时间似乎不能进一步改善,因为在这样的情况下发生的过度计数: [ 1 ] —->[ 2 ]—>[ 4 ]—>[ 5 ] [ 3 ] ——/——–/ 第三个节点会统计第四个节点,即使第二个节点已经统计了第四个节点。 为了让事情变得更糟,我只用JavaScript解决了这些挑战。 它是我的主要语言,我从推动它的边界获得快感。 领导委员会中没有人用JavaScript解决了这个问题,但我认为这是可能的。 比赛结束后,我用下面的代码设法通过了24个testing用例中的13个: function […]

在d3的指导下,如何通过点击来改变节点的形状?

我在d3中有一个强制定向图,并希望能够点击圆形节点并将它们变成矩形。 然后,如果我点击一个矩形,我想它恢复到一个圆圈。 我已经看过这个和有关的问题,但我认为他们是D3的早期版本,不为我工作。 我可以做到这一点,我的圈子的大小和颜色会改变点击,并与下面的代码,我可以用一个黑色的矩形replace圆节点,但它不附加在图上,只是一个黑色的方块SVG。 node.on("click", function(d,i) { var size = 20; d3.select(this).remove(); svg.append("rect") .attr("x", dx) .attr("y", dy) .attr("height", size) .attr("width", size) .style("fill", function(d) { return color( d.group); }); }) 任何人都可以告诉我我失踪了吗? 我怀疑rect没有被附加到graphics数据上,但是我没有足够的熟悉d3来理解我应该改变什么。 谢谢。

如何为基于NFA的正则expression式“a * b * a +”工作

我在JS中写了一个简单的正则expression式parsing器,parsing器只支持“*”和“+”,然后我发现一个问题。 “aa”匹配/ a * b * a + /的结果是错误的。 这是我的过程。 首先,我用REstring新build一个NFA图。 如图所示,状态5有一个计数器,如果计数器> = 1,状态5将指向“_end”,graphics将被连接。 从状态0开始,执行DFS,logging每个访问节点。 匹配string,如果两者相等,则下一个状态的计数器+1,然后从下一个状态开始DFS。 当string结束时,检查被访问节点,如果状态为6,则返回true,否则返回false。 这是我的代码。 var Graph = require(__dirname + '/../Graph.js'); var DFS = require(__dirname + '/../DFS.js'); var NFA = module.exports = function(regexp) { var ops = new Array(); // stack this.re = regexp; this.M = this.re.length; this.G = new Graph(this.M + […]

有条件的无花果configuration为开发需要

一段时间以来,我们一直在使用docker集装箱进行开发和卸载,而且它的function就像一个魅力。 直到现在,两个configuration都是相同的,而顶层的开发人员的生活也更容易。 随着我们在节点开发中越来越多地使用它,现在我们面临着在开发(检查员,configuration文件等)的时候需要一些额外的工具,而这些工具在生产容器中显然是不需要的。 再次捕捉到node-inspector是:它需要暴露一个端口连接到一个浏览器才能看到该工具它自己。 这里是简单的我们的fig.yml文件: indexer: build: . volumes: – .:/src links: – db – amqp – search amqp: ports: – "5672:5672" – "15672:15672" image: mikaelhg/docker-rabbitmq db: ports: – "3306:3306" image: tutum/mysql:5.6 search: ports: – "9002:9002" – "9300:9300" image: dockerfile/elasticsearch “索引器”是我们的应用程序容器,可以多次启动,将其configuration更改为: indexer: ports: – "8080:8080" build: . volumes: – .:/src links: – db – amqp […]