小编Dar*_*iss的帖子

产品版本微服务

我进入基于docker的微服务架构,我有3个微服务,它们共同创建了一个产品,例如"CRM系统".

现在我希望我的客户能够随时升级他的产品.我有3个不同版本的微服务,客户应该看到哪一个?我想产品版本应该独立于微服务,因为复制一个微服务版本会让我比没有版本更麻烦.

那么有什么模式,想法来处理这种情况吗?

我唯一想到的是拥有另一个存储库,只要其中一个微服务生成生产就绪包,就会对其进行版本控制.但是,我现在有一个版本,我的产品所有者(PO)都不知道.

architecture soa domain-driven-design docker microservices

21
推荐指数
2
解决办法
8262
查看次数

Phalcon Zephir vs APC vs HHVM Performance

我开始阅读有关HHVM和Zephir的内容.起初我很兴奋,由于这些技术,性能上升了.但后来我开始问自己一个问题.如果它真的给你这样的性能,就像这种技术的所有者说的那样.

现在我要说,我觉得它看起来怎么样.如果我错了,请纠正我.

Php Script Live Process:运行脚本 - >编译 - >执行脚本

这里显而易见的问题是编译.我们需要在每次启动时编译脚本.

让我假装安装了Apache2,并运行名为"test.php"的php脚本:

APC: APC打开,APC选项检查更改.它应该是这样的:
运行脚本 - >执行脚本
因为它已经编译到我们的内存并准备使用.

HHVM: Hip Hop虚拟机,其行为与APC类似.这里的不同之处在于,虚拟机,对于带有APC的标准PHP,它是Zend Engine.所以它是这样的:
运行脚本 - >执行脚本
因为它已经编译(在内存中?)并准备使用.

Zephir: 我将我的脚本编译为C扩展.所以我猜它不需要编译?(我不确定这一点).所以我的php脚本里面的函数现在都是本机的.因此,如果我编写另一个名为"test2.php"的脚本,它将运行我在"test.php"中的本机函数(是的,它应该具有.zep格式,但现在无关紧要).现在使用APC我避免编译过程.
运行脚本 - >执行脚本

现在我很困惑.就你所知,它现在都是一样的.我没有看到使用Zephir和HHVM比标准APC有任何优势.所以我想听听,如果我是对的还是完全错的?

php apache compilation phalcon hhvm

5
推荐指数
1
解决办法
3943
查看次数

Javascript - 范围

<script type="text/javascript">
function BigComputer(answer) {
   this.the_answer = answer;
   this.ask_question = function () {
   alert(this.the_answer);
   }
}

 function addhandler() {
   var deep_thought = new BigComputer(42),
   the_button = document.getElementById('thebutton');

   the_button.onclick = deep_thought.ask_question;
}

window.onload = addhandler;
 </script> 
Run Code Online (Sandbox Code Playgroud)

为什么这个脚本返回undefined而不是42?这就是我如何理解:
1)在网页加载时我们运行'addhandler'方法.
2)在此方法中,我们为deep_thought变量创建BipComputer实例.我们在答案中设置了42(BipComputer类中的公共变量)
3)然后我们设置按钮的参考(在html文件内)
4)点击按钮激活,这里有魔术:
在我看来应该打印出来编号42,因为我们刚刚在第2步中为此设置了,但是变量是"Undefined"吗?

另一个问题是,在没有()(没有参数传递)和()的情况下运行方法有什么区别.[像addhandler方法].

也许这个问题很简单,但我过去常常用java和php编程,现在javascript导向编程的思维方式对我来说很奇怪.函数看起来像类,类看起来像函数,没有真正的构造函数和东西.
但没关系,让我们回到问题:)
我真的很感激任何帮助.




@编辑

感谢@lbstr我找到了有用的链接,对于那些问我同样问题的人. http://web.archive.org/web/20080209105120/http://blog.morrisjohns.com/javascript_closures_for_dummies

javascript oop methods event-handling

3
推荐指数
1
解决办法
83
查看次数

SQL Server:插入触发器

我的触发器问题如下.谢谢你的帮助.

CREATE TRIGGER upper_case ON osoba
AFTER INSERT AS
BEGIN
    DECLARE @imie VARCHAR(25)
    DECLARE @new_imie VARCHAR(25)
    DECLARE my_cursor CURSOR FAST_FORWARD FOR SELECT imie FROM INSERTED

    OPEN my_cursor
    FETCH NEXT FROM my_cursor INTO @imie

    WHILE @@FETCH_STATUS = 0
        BEGIN
            @new_imie = UPPER(SUBSTRING(@imie, 1, 1)) + SUBSTRING(@imie, 2,LEN(@imie))
        END
        UPDATE osoba
        SET imie = @new_imie WHERE imie = @imie
END
Run Code Online (Sandbox Code Playgroud)

错误消息:

消息102,级别15,状态1,过程upper_case,行13
'@ new_imie'附近的语法不正确.
消息102,级别15,状态1,过程upper_case,行17'END
'附近的语法不正确.

sql t-sql sql-server triggers sql-server-2008

0
推荐指数
1
解决办法
225
查看次数