java服务器开发心得

 本人已从事java服务器开发三年多了,对java服务器开发比较有心得,特此对这三年多来进行下技术总结,并与大家分享。

作为服务器开发,对基础知识的掌握程度,将决定你的服务器各方面的能力,一般在进行java服务器开发前,最重要的是能够熟练运用以下技术

java classLoader、java thread、java I/O(NIO)和java socket。

 

一般来说,服务器设计大致分为三个阶段:

第一个阶段是连接器设计

第二个阶段是核心业务设计(严格来讲就是通用服务设计)

第三个阶段是数据设计

 

对于第一个阶段的设计,涉及到网络知识(阻塞式socket和非阻塞式socket)、通信模式(TCP/IP或者UDP)、网络管理(负载、连接状态等)、传输协议设计(特别与其他语言的交互)、I/O处理(bytes转成Object、Object转成bytes)等。有些方面可以靠网络硬件设备来解决。

 

对于第二个阶段的设计,主要涉及众多的相关领域的知识,如:

多线程的设计(参考《多线程设计模式》)、管理设计(参考JMX)、消息传输设计(参考JMS)、安全设计(参考java安全)、缓存设计(参考cache4j、JCS等开源项目)、资源池设计(数据库连接池等)、对象重用设计、命名空间设计(参考JNDI)、分布式设计(参考RMI)、组件设计等。

 

对于第三个阶段的设计,主要涉及的知识为数据库方面的知识,如:

事务处理、数据库建表设计、数据持久化设计等。
这里也比较局限化,并不是所有的业务场景都需要用到数据库,在此就是举例说明下,
第三个阶段就是在前两个阶段的基础上做相关的应用开发了。

 

 

最后是服务的部署:

包括JVM的参数优化、目录结构、批处理文件的编写。

 

 

这是我三年作为服务器开发涉及的相关知识,在以后的时间里会对每一个知识点更加细化,方便大家进入到java服务器开发领域。

 

今天就写到这吧。睡觉去了,呵呵

 

 

你可能感兴趣的:(java服务器)