วันพฤหัสบดีที่ 2 เมษายน 2026
  • Login
นครสวรรค์
  • นครสวรรค์
  • ข่าว
  • กิจกรรม
  • หางาน
  • ธุรกิจ
  • ร้านค้า
  • วิถีชีวิต
    • คนสำคัญ
  • สถานที่ท่องเที่ยว
  • สถานศึกษา
  • ผู้สนับสนุนเว็บ
  • ติดต่อเรา
No Result
View All Result
  • นครสวรรค์
  • ข่าว
  • กิจกรรม
  • หางาน
  • ธุรกิจ
  • ร้านค้า
  • วิถีชีวิต
    • คนสำคัญ
  • สถานที่ท่องเที่ยว
  • สถานศึกษา
  • ผู้สนับสนุนเว็บ
  • ติดต่อเรา
No Result
View All Result
นครสวรรค์
No Result
View All Result
Home ข่าว

ICE-高效的中间件平台,牛刀小试

นครสวรรค์ by นครสวรรค์
20 ปี ago
in ข่าว
Reading Time: 1min read
158
0
100
SHARES
199
VIEWS
Share on FacebookShare on TwitterSent to LINE friend

ICE(Internet Communications Engine)是ZeroC提供的一款高性能的中间件,基于ICE可以实现电信级的解决方案。前面我们提到过在设计网站架构的时候可以使用ICE实现对网站应用的基础对象操作,将基础对象操作和数据库操作封装在这一层,在业务逻辑层以及表现层(java,php,.net,python)进行更丰富的表现与操作,从而实现比较好的架构。基于ICE的数据层可以在未来方便的进行扩展。ICE支持分布式的部署管理,消息中间件,以及网格计算等等。

大道理讲完,言归正传,最近育儿网新增了不少新服务,服务间经常会需要相互调用数据,例如用户中心要取博客系统里的文章啊,论坛里发文后要在积分系统里增加用户积分啊。由于设计时这些服务仅仅基于统一的用户中心,服务间基本是独立的,所以要实现这些调用只能在每个服务上新增为其它服务提供服务的服务-_-!。这个时候有几个可选方案,我们开始选择了xml-rpc,基于http和xml的选程调用,用了一段时间,发现维护成本和访问性能都存在问题。

由于这些中间服务部署的时候是和各自所属的服务部署在一起的,对这些服务做整体的改动就非常困难,要维护起来就比较麻烦。另外由于是什么http和xml作为通信协议,由php实现业务逻辑,性能问题也很明显,而且这些http请求都会在http日志留下足迹,导致我们的日志分析很不精确。这个问题不是太大,但很郁闷,所以我们考虑使用ICE来解决这个问题,至于SOAP什么的就不考虑了,同样效率低下。

实现的过程还是比较顺利,花了三天的时间用c++实现了大部分常用的接口,服务端采用deamon的方式运行,错误日志记在syslog里(/var/log/messages),客户端PHP,编译进去了IcePHP,调用的方法很简单。现在还存在一些问题,运行的时候会异常退出,还需要一段时间来解决,暂时加了只狗看着,一旦进程里没了就重新启动。

既然要跨平台通讯,就涉及对象描述,ICE使用Slice来对结构,类,方法等进行定义。完了以后服务器端,客户端都按这个来调用和实现。ICE内置的Linux 下后台Deamon实现方案非常简单,只需要从Ice::Service里派生出一个类来,实现run方法,在这个方法里创建adapter对象,并在adapter对象里添加Servants,然后激活这个adapter就可以了,网络层的通信都由ICE接管了。由于是基于tcp/ip的直接通信,比更高层的http通信效率要高很多。

在客户端实现时,我们也碰到了一些小麻烦。一个是内置的$ICE对象用的时候有时需要用global声明,否则可能会出错,另外由于默认情况下Slice中struct对应到php的类型是一个类的实例,而不是一个数组,所以在赋值给页面的时候,smarttemplate以及其它模板系统中可能都会存在问题,可以通过修改模板系统的数据赋值显示代码解决。

我们做了一些性能的测试,同样运行1千次请求,使用xml-rpc实现需要28秒左右,使用ICE实现,只需要3秒多,性能的差距还是很大的,同时在这个过程中没发现有内存泄露的情况,效果还比较理想。

最后感慨一下,ICE是适合人类使用的中间件!

Previous Post

mixi.jp:使用开源软件搭建的可扩展SNS网站

Next Post

初创网站与开源软件

นครสวรรค์

นครสวรรค์

เมืองสี่แคว แห่มังกร พักผ่อนบึงบอระเพ็ด ปลารสเด็ดปากน้ำโพ

Related Posts

566000005151601.jpg
ข่าว

เป็นดาวทั้ง TikTok และชีวิตจริง! เปิดใจ รปภ.หนุ่มนครสวรรค์สายเอนฯ โชว์ลีลาโบกรถ-ดูแลผู้ป่วย/ญาติ ติดใจกันทั้ง รพ.

มิถุนายน 2, 2023
566000005130103.jpg
ข่าว

สั่งจองคิวลิเกเปิดวิกทันที! ศรัทธาวัดดังนครสวรรค์ได้เลขเด็ดหางประทัดบูชาท้าวเวสสุวรรณ ถูกหวย 12 ล้าน

มิถุนายน 1, 2023
566000005124904.jpg
ข่าว

คนขับกระบะติดคอก-โหลดเตี้ย-เสริมแหนบ ขนผักล้น รับโดนจับปรับประจำแต่ยังไม่เจอส่วยสติกเกอร์

มิถุนายน 1, 2023
จับเพิ่มแก๊งขนต่างด้าวร่วมขบวนแวนมรณะพลิกคว่ำไฟลุกคลอกแรงงานพม่าดับสยอง-4-เจ็บ-6
ข่าว

จับเพิ่มแก๊งขนต่างด้าวร่วมขบวนแวนมรณะพลิกคว่ำไฟลุกคลอกแรงงานพม่าดับสยอง 4 เจ็บ 6

มิถุนายน 1, 2023
566000005051402.jpg
ข่าว

ยัน “ส่วยสติกเกอร์” มีมานานเก็บทุกเส้นทาง ทั้ง ทล.1 หลัก-3 หลัก กระจายส่งทุกระดับตั้งแต่ท้องที่-ส่วนกลาง

พฤษภาคม 30, 2023
566000004738801.jpg
ข่าว

“สุวัจน์”นำ“ชาติพัฒนากล้า”แถลงไม่น้อยใจไม่ผิดหวัง “ก้าวไกล”กลับลำไม่รับร่วมรบ.- ยันจุดยืนไม่แตะ ม.112

พฤษภาคม 20, 2023
Next Post

初创网站与开源软件

บทความ แนะนำ

No Content Available

หมวดบทความ

การก่อสร้าง การขนถ่ายสินค้า การขุด หรือเจาะบ่อน้ำ การค้าวัสดุก่อสร้าง การติดตั้งไฟฟ้าสายหลัก การทำดอกไม้ประดิษฐ์ การทำเหมืองแร่ใต้ดิน การปั้มโลหะ การผลิต การบรรจุก๊าซ การผลิตน้ำแข็ง การหล่อหลอม การกลึงโลหะ การหีบฝ้าย ปั่นนุ่น การเคลือบ ชุบ อาบขัดโลหะ การเลี้ยงสัตว์ กิจกรรม ข่าว ตรวจหวย ธุรกิจ นครสวรรค์ บริการซัก อบ รีด บริษัท มูลนิธิ ร้านค้า ร้านอาหาร วิถีชีวิต สถานที่ท่องเที่ยว สถานศึกษา สพป.นครสวรรค์ เขต 1 สพป.นครสวรรค์ เขต 2 สพป.นครสวรรค์ เขต 3 สพม.เขต 42 สมาคม หน่วยงานราชการ อบต. อาหาร เครื่องดื่ม เอสเอ็มอี แฟรนไชส์ โรงงาน โรงพยาบาล บริการสุขภาพ โรงเรียนกวดวิชา โรงเรียนศิลปะและกีฬา โรงเรียนสอนวิชาชีพ โรงเรียนสามัญ โอทอป

เกี่ยวกับเรา นครสวรรค์



เป็นศูนย์รวมในการนำเสนอข้อมูลเพื่อสนับสนุนธุรกิจด้านการท่องเที่ยวในจังหวัด และแลกเปลี่ยนความคิดเห็นพร้อมทั้งให้ข้อเสนอแนะและ ให้คำแนะนำเพื่อเป็นประโยชน์แก่สมาชิก อีกทั้งยังเผยแพร่ข้อมูลเพื่อประโยชน์ในการศึกษา ค้นคว้า วิจัย ต่าง ๆ อีกด้วย

Unable to open file!