摘要: PHP从诞生以来就受到广大编程爱好者的喜欢,成为中小站长的好帮手,并培养了大量的PHP编程人员,但是随着PHP的应用越发广泛,很多时候已不限于从事中小网站的应用,一些大型PHP项目也屡见不鲜。 当我们选择PHP开发大型项目时,就不得不考虑开发效率、开发规范、后期维护等问题,这时大家往往会选择一款人们所认可的开发框架,目前所流行的Zend Framework、Yii、Symfony、CodeIgniter、CakePHP等都声称有着开发大型应用的能力。 新框架层出不穷,但当我们真正应用这些框架去实现产品又总是会有各种不同的问题产生。 阅读全文
posted @ 2011-10-14 23:42 lajabs 阅读(3339) 评论(7) 推荐(3) 编辑
摘要: v8是google开发的一个js引擎,其性能非常出色,包括Chrome在内的开源产品都在使用它,同时我们知道Chrome采用的是多进程模式,本文主要是例举一个基于v8的多进程JS编程API。 阅读全文
posted @ 2011-08-16 20:30 lajabs 阅读(6003) 评论(1) 推荐(0) 编辑
摘要: v8引擎为Google开发的JS语言解释器有着高效易用等特点,通常它执行一个Js脚本需要经过编译和运行步骤, 由于我们的脚本程序很可能不正确,随时造成过程环节的异常,我们来解决一个异常以及错误的捕捉和处理过程。 阅读全文
posted @ 2011-08-10 16:06 lajabs 阅读(2896) 评论(1) 推荐(2) 编辑
摘要: 网络服务器通常要应对一些意外情况,如空连接行为,指在遇到客户端连接后不进行任何操作,并很可能在大量空连接情况下导致服务器资源耗尽而无法工作。 以下代码主要工作在连接后首次接收客户端消息的环节添加一个timer,并在指定时间后检测是否已接收到消息(验证消息环节此处略去),如果没有收到消息则可认为这是一个非正常连接,并马上断开 阅读全文
posted @ 2011-07-26 12:07 lajabs 阅读(1247) 评论(0) 推荐(0) 编辑
摘要: 例子是一个很常见的boost.asio的异步执行代码,如果没认真看很容易忽略了bind参数中的"this"参数,这正是当前对象的指针!异步执行过程中另一个线程会持有这个"this"指针并在未知的时间里回调HandSend方法,而在持有这个指针的时间内,这个线程并不知道当前对象有可能已经被销毁,所以造成很低级的悬空指针案件。 阅读全文
posted @ 2011-07-26 11:24 lajabs 阅读(1399) 评论(0) 推荐(0) 编辑
摘要: 假设一种环境,我们要对服务热拔插一个动态库(.so文件),所要考虑的是多线程环境的兼容,不会因为动态库替换后造成栈损毁而崩溃。这边想到的方法就是封装一个dlopen过程作为对象实例加载(见load_so.h),当发出更新动态库时重新dlopen过程,替换原先的实例,注意这个替换过程必须是温和的、无逢的,这边我们使用智能指针实现。具体更新的实现通过一个单例(见do_sth.h),调用Reload重新加载动态库。我们构造一个极简单的动态库测试:make_so.h#include "say.h"extern "C"{ void Enter(const std: 阅读全文
posted @ 2011-07-19 11:57 lajabs 阅读(2611) 评论(0) 推荐(0) 编辑
摘要: 引用之前发表过的文章:http://lajabs.blog.cd/?p=342针对如下错误:terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector >'what(): boost::lock_error在之后不断地资料查找中发现官方解释如下,这是一系列的锁检测机制:Checked Locking StrategyWith a checked locking strat 阅读全文
posted @ 2011-07-19 11:44 lajabs 阅读(2159) 评论(0) 推荐(0) 编辑
摘要: php做为脚本语言,有时也有特殊的需求对外连接到其它服务器发送消息,简单的方法可以直接使用socket扩展,比如连接一个TCP服务器。 阅读全文
posted @ 2011-07-19 11:42 lajabs 阅读(911) 评论(0) 推荐(0) 编辑
摘要: 使用共享内存方式实现一个属于php的“自旋锁”,主要特点是: 1、检测和避免死锁 2、并可以自定义锁定超时 3、可以在运行结束后自动释放锁定 4、可搜集分析锁竞争和锁等待情况 阅读全文
posted @ 2011-07-19 11:28 lajabs 阅读(1443) 评论(0) 推荐(1) 编辑