OPener_Server 开源,第一弹 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
openercn
V2EX    开源软件

OPener_Server 开源,第一弹

  •  
  •   openercn 2016-11-16 09:43:47 +08:00 3452 次点击
    这是一个创建于 3261 天前的主题,其中的信息可能已经有所发展或是发生改变。

    什么是 OPener_Server?

    Opener_Server 是一个轻 Http 容器标准。 具体来说:以 Http Server 作为底层架构,以异步非阻塞模式为主要思想,通过 Http POST 模式构建一个可注入代码的容器,新注入的代码码依靠脚本语言内置的 EVAL 方法来执行。

    主要特点:

    • 编程思想:异步非阻塞模式贯穿程序。Http server 是异步非阻塞模式,为了保证不与这个冲突,所有的注入代码均为异步非阻塞模式的实现。本容器作为以后的最小运行单元,保证异步非阻塞模式,可以方便大规模部署。
    • 注入代码:现阶段通过脚本语言的内置函数来实现。例如 perl 的 eval{};函数 , 同样具有这个特性的语言还有 python 、 Javascript 、 php....
    • 原则上,每个容器应用为了不与其他容器应用程序冲突,都应该启动一个新的进程。这个新的进程就是一个空容器,然后通过注入代码来实现其他应用。
    • 初始容器默认使用 https 协议的 10008 端口作为管理端口。通常情况下第一个容器进程使用该默认管理端口,作为所有其他应用进程的管理进程。通过这个管理进程,可以实现启动其他应用的进程。
    • 每一个启动的容器进程初始情况下是完全相同,不同的地方只有管理端口号是不同。
    • 每个新的进程都有一个新的管理端口。原则上是 11008 往后的端口号,具体的端口号自己设定。我们未来会出一份列表,详细列出 10008-11008 之间的端口号的官方定义应用。
    • 在管理端口上,会包含一些基本的 http api ,这些 http api 构成了 Opener_Server 标准的大部分。
    • 标准实现的程序内部全部都是可替换指针函数。正常情况下,在任何时候,都可以热更换每一个函数。
    • 任何时候你也可以通过 http 实时查看程序内部的运行情况,包含内部变量的情况、错误输出等等

    项目地址: https://github.com/openerserver/openerserver/

    第 1 条附言    2016-11-16 10:33:36 +08:00
    微博: http://weibo.com/openerserver
    微信公众号:
    1 条回复    2016-11-16 10:41:28 +08:00
    alexecn
        1
    alexecn  
       2016-11-16 10:41:28 +08:00
    +1
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5813 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 03:07 PVG 11:07 LAX 20:07 JFK 23:07
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86