笔者将利用这篇文章对自己多年的服务器开发经验进行一个总结,供各个企业和个人站长参考。
1、网络设计(BIO(java.net包)和NIO(java.nio.channels包)两种方式,参考MINA(C/S), JETTY(B/S)、jsockets和jniosocket等开源项目)(参考资料O’reilly系列网络编程)
2、传输协议设计(http、https、ftp、smtp等协议和自定义传输协议,基于TCP/IP协议之上)
3、I/O处理设计(字节流(java.io包)和字符流到Buffer(java.nio包)缓冲区,最后把可以扩展到stream object 转换成POJO,将POJO转换成streamobject的范围)(参考O’reilly系列的IO和NIO两本书籍)
4、可以扩展的XML设计(可以跟其它语言(C++等)开发的系统进行交互请求信息,也是一种很重要的手段,包括解析(JDOM、DOM、SAX、DOM4j等)、生成、语言格式)
5、管理设计(JMX(参考资料O’reilly系列JMX书籍。javax.management包),JFOXMX、MX4J开源项目)
6、消息设计(JMS(参考资料O’reilly系列JMS书籍),OPENJMS开源项目)
7、安全设计(访问控制器、数据加密、数据传输保护和授权(javax.crypto包)
8、缓存设计(JCS(内存缓冲、索引式硬盘缓冲、并行式的分布缓冲和Client/Server式的缓冲)、CACHE4J、EOCACHE等)
9、多线程池设计(concurrent开源项目,对应java.util.concurrent包)
10、事务处理(包括分布式事务处理)设计
11、资源池(数据库连接池、socket连接池、线程池等)、对象池等开销大的资源设计。
12、数据持久化设计(JDO、HIBERNATE、IBSTAT等开源项目)
13、WEB框架设计(基础框架SERVLET、SOAP技术。STRUTS、JSF、AJAX、TAPESTRY等开源项目)
14、处理机制的异步设计(责任链设计、流水线设计等)
15、扩展到分布式设计
16、扩展到命名空间设计
17、对象重用设计(这是在代码中要注意的,个人根据经验分析,需要每次创建的对象是请求对象和结果对象,中间过程的所需要的功能对象一般都可以做成重用的方式)
18、JVM的参数优化(类加载技术(包含热部署)属于外部部署,ANT开源项目)
19、服务器部署的目录结构:BIN、CONF、LIB、LOG目录等。
20、业务逻辑处理设计(根据实际情况来进行,SPRING、EJB、JDON等),严格的来说是另一个范畴。
21、组件设计(属于一些特定领域应用
22、通过在实际的使用过程中积累经验(解决使用中出现的问题)。
笔者认为认为现在多核CPU的出现,使得今后的并行处理的设计方式和分布式等多个技术有了一个更加好的发展空间。
以上就是金山云为您带来的后台服务器开发总结的相关内容,如果您还想了解更多经验,个人,网络,笔者,服务器,金山云的相关问题您可以点击页面中的链接进行具体了解。金山云提供云服务器,云主机,云存储,私有云,数据库,物理主机,RDS,KS3,SLB,KEC的全套产品服务,部分产品可以免费体验,而且会有定期的优惠、代金券等相关的活动。成立7年来,金山云始终坚持以客户为中心的服务理念,提供安全、可靠、稳定、高品质的云计算服务。以上是对后台服务器开发总结相关介绍,如果觉得对您有帮助可以收藏。欢迎随时查看。