100k+
我指的是超过1000行C程序代码的项目,事实上,linux发展到今天,内核源代码也就是不到2000万行C程序。
如果这个量级,基本上甲骨文和IBM的数据库源码可能能达到这个量级,winXP的内核估计也就是600万行左右,里面还有很多C++和VB写的逻辑结构。
国内,一般的源码(C++)其实都是低于20万行的。
这种大型项目,PB(Power Builder)在90年代风靡的时候,就有最好的处理方案,使用事件来驱动整个系统。
把整个系统划分为若干模块,然后把不能挂起的进程和线程分别建立容器Docker,这称之为主模块。
Docker是上层逻辑,底层实现一般使用openMPI来跟硬件和系统打交道。
可以挂起的模块,采用事件驱动器绑定方案,这称之为事件响应模块。
这里需要说明的一点,事件消息拦截器这本身是一个不可以挂起的进程。
一般的经验,单个模块的大小最好不压超过2000行C++程序(boost库大约包含2000~2500个标准函数)。
一般的成熟的java程序员的工作量,一周时间可以完成2500行的java代码,也就是可以写完一个标准的class。