配色: 字号:
腾讯大讲堂58-拍拍AppPlatform中间件解决方案简介
2020-02-28 | 阅:  转:  |  分享 
  
拍拍AppPlatform中间件解决方案简介大纲系统原理灵活部署快捷开发PaiPai后台服务的整体架构AppServer
内部协议流转四种模式AppServer开发模式映射到AppPlatform中间件架构AppPlatform(App
ContainerAutoGen)AutoGen框架代码生成工具(C++h数据源)AutoGen框架代码生成工具
(JavaIDL数据源)AppPlatform中间件部署架构——传统两层架构AppPlatform部署架构——传统三层架构
AppPlatform部署架构——大APP架构传统Statful状态机的实现优化后的Statful状态机的实现谢谢大
家!问题?腾讯大讲堂第五十八期研发管理部大讲堂主页:http://km.oa.com/class与讲师互动:
http://km.oa.com/group/class电子商务部鲁锋(henrylu)2009-02-14推荐Int
OnExecute(){switch(m_cStat){ caseS_START:
OnWebRequest(WebRequest[out]);
//DoSomething… DoDB1Request(DB1Request[in]); m_cStat=S_
CHECK_1;return1; caseS_CHECK_1: OnDB1Response(DB1Response[o
ut]); //DoSomething… DoDB2Request(DB2Request[in]); m_cSt
at=S_CHECK_2;return1; caseS_CHECK_2: OnDB2Response(DB2Res
ponse[out]); //Dosomething… DoWebResponse(WebResponse[in]);
m_cStat=S_FINISH;return0;}//…
return0;}IntOnExecute(){ OnWebRequest(WebRequest[out
]); //DoSomething… CallDB1(DB1Request[in],DB1Response[out
]); //DoSomething…withDB1Response CallDB2(DB2Request[in
],DB2Response[out]); //DoSomething…withDB2Response DoWe
bResponse(WebResponse[in]); //… return0;}奥妙就在此:CallDB1(D
B1Request[in],DB1Response[out]){ DoDB1Request(DB1Request[in])
; Schedule();//LinuxSystemCallswapcontext(…) OnDB1Respons
e(DB1Response[out]);}将底层重复代码封装成一个容器服务器(Container),并提供统一的接口和日志格式
,物理上把应用层代码封装成动态链接库,有效地隔离了底层代码改动带来的影响。Netio提供了独立的网络接入方案,部署在AppCon
tainer的前端和后端,异步处理TCP或UDP数据,并将其传入AppContainer的前置/后置消息队列中,待AppContainer逐一处理。降低了AppContainer的复杂度和繁忙度。
献花(0)
+1
(本文系新用户18771...首藏)