今天打算对之前进行多年的服务器端开发进行下技术总结,以供大家参考。
个人对服务器开发基础框架平台有以下几点总结(会随时更新):
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转换成stream object的范围)(参考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包)参考资料O’reilly系列java安全书籍、传输加密(javax.net包)==)
8、缓存设计(JCS(内存缓冲、索引式硬盘缓冲、并行式的分布缓冲和Client/Server式的缓冲)、CACHE4J、EOCACHE等)
9、多线程池设计(concurrent开源项目,对应java.util.concurrent包)
10、事务处理(包括分布式事务处理)设计(暂缺,可能包含在15和12中==)
11、资源池(数据库连接池、socket连接池、线程池等)、对象池等开销大的资源设计(个人认为这块还是很难的。可以参考比较优秀的开源项目中设计,可以完善自己的设计思想)
12、数据持久化设计(JDO、HIBERNATE、IBSTAT等开源项目)
13、WEB框架设计(基础框架SERVLET、SOAP技术。STRUTS、JSF、AJAX、TAPESTRY等开源项目)
14、处理机制的异步设计(责任链设计、流水线设计等)
15、扩展到分布式设计(RMI(参考资料O’reilly系列RMI书籍java.rmi包)、JTA等)
16、扩展到命名空间设计(JNDI(参考资料The JNDI Tutorialjavax.naming包))
17、对象重用设计(这是在代码中要注意的,个人根据经验分析,需要每次创建的对象是请求对象和结果对象,中间过程的所需要的功能对象一般都可以做成重用的方式)
18、JVM的参数优化(类加载技术(包含热部署)属于外部部署,ANT开源项目)
19、服务器部署的目录结构:BIN、CONF、LIB、LOG目录等。
20、业务逻辑处理设计(根据实际情况来进行,SPRING、EJB、JDON等),严格的来说是另一个范畴。
21、组件设计(属于一些特定领域应用,例如JYTHON、JAVACC、HSQLDB、QUARTZ等开源项目)
22、通过在实际的使用过程中积累经验(解决使用中出现的问题)。
个人认为多核CPU的出现,今后的会发展成并行处理的设计方式和分布式等多个技术发展方面。目前才认识到大学里的基础知识给服务器开发(应该是很多方面)提供了很多基础设计的思想(只能怪自己当初大学里没有好好学习啊,嘿嘿)。
9和11可以合并。
10和12本人感觉有点像是业务逻辑处理的数据层面的东西,但还不能确定。
18和19可以合并成一部分,因为都是属于部署方面的。
主要相关技术归类:
底层技术 |
汇编 |
程序机器级表示 |
处理器体系结构 |
编译器技术 |
存储器层次结构 |
虚拟存储器 |
链接 |
信息表示和处理 |
|
|
Java基础 |
语法 |
关键字 |
类初始化 |
重载与重写 |
三大特性(封装、继承、多态) |
一般优化 |
|
|
|
|
Java SE |
Java security |
Java thread(1.4和1.5) |
Java I/O(1.3和1.4) |
AWT/SWING |
Java Exception |
Java network(1.3和1.4) |
Class loader |
JVM Standard |
Java Reflection |
Java Beans |
Java事务 |
|
|
|
|
Java EE |
JMS |
JMX |
JNDI |
RMI |
JDBC |
JTA |
JCA |
EJB |
JAAS |
Servlet/JSP |
JDO |
|
|
|
|
参考推荐:
服务器开发总结
技术团队新官上任之基层篇
分享到:
相关推荐
【资源说明】c++后台服务器开发面经或八股总结.zipc++后台服务器开发面经或八股总结.zipc++后台服务器开发面经或八股总结.zipc++后台服务器开发面经或八股总结.zipc++后台服务器开发面经或八股总结.zipc++后台服务器...
服务器开发往往关注性能,面试中可能会讨论如何通过缓存、负载均衡、数据库优化、代码优化等手段提升系统性能。理解CPU、内存、磁盘I/O等资源的瓶颈分析和调优方法也非常重要。 总之,Linux C/C++服务器后台开发...
总结来说,"WEB开发后台模板 ASP JSP IFRAME 模板"涵盖了Web开发中的一些核心概念,包括利用模板快速构建后台界面、选择合适的服务器端技术(ASP或JSP)以及如何利用IFRAME提升用户体验。理解并熟练运用这些知识点,...
在现代移动应用开发中,特别是Android应用,与后台服务器之间的数据通讯是至关重要的环节。为了保证数据的完整性和安全性,开发者需要了解并掌握不同的通讯协议及其安全机制。 #### 二、通讯协议详解 ##### 1. TCP...
总结起来,获取非服务器控件到后台的方法主要包括:通过表单提交(POST请求)或使用AJAX异步请求。在ASP.NET中,可以使用Request对象处理表单数据,或者定义WebMethod来接收AJAX请求。这些技术在实际的Web开发中非常...
总结来说,前端和后台开发技术是构建Web应用不可或缺的部分,它们共同作用于创建功能丰富、交互性强的在线产品。前端关注用户体验,后台处理数据和业务逻辑,两者通过HTTP请求和响应进行通信。在这个特定的“gsweb”...
### 页面中文和后台服务器端接收中文乱码问题完全解决 #### 概述 在Web开发过程中,中文乱码问题是常见的技术难题之一。特别是在早期的Web应用程序中,由于编码标准不统一,不同系统间的编码方式差异等原因,导致...
总结来说,后台开发中的图标设计是一项关键的任务,它直接影响着用户体验和系统效率。本资源提供的七种风格16*16像素图标,为后台开发者提供了丰富的选择,有助于打造专业且易用的后台界面。无论是在新项目启动还是...
总结,EXTJS AJAX方式发送数据给后台服务器是Web开发中常见的操作,通过理解和掌握EXTJS的AJAX方法,可以提升Web应用的交互性和效率。在实际项目中,应根据需求灵活运用,并注意处理可能出现的各种异常情况,以保证...
服务器开发是后台开发岗(Python)岗位的核心职责之一。服务器开发指的是在服务器端编写代码,处理用户请求,实现业务逻辑,并将结果返回给用户。服务器开发需要考虑性能、可靠性、稳定性、扩展性、功能和易用性等多...
### Linux平台上简洁的后台服务器架构:Nginx+CGI+SQLite/MariaDB组合 #### 概述 本文探讨了一种适用于嵌入式系统的简洁浏览器/服务器架构(B/S架构)。这种架构允许开发者独自完成从前端到后端的全部开发工作,...
### Ext与后台服务器的交互操作 #### 一、概述 在现代Web开发中,前端框架如Ext JS(简称EXT)扮演着重要的角色,特别是在企业级应用中。Ext JS以其丰富的UI组件库、强大的数据处理能力和良好的用户体验而受到...
"Android 项目开发实训总结报告.pdf" 本文档总结了 Android 项目开发实训的报告,涵盖了项目概述、需求分析、相关技术、概要设计、详细设计和结论等多个方面。 第一章 概述:本章节介绍了项目的背景和需求,旨在...
总结来说,.NET 6、Blazor和Furion的结合,为后台管理系统开发带来了新的可能性。它们降低了开发难度,提高了开发速度,同时也确保了系统的稳定性和性能。对于想要涉足这一领域的开发者来说,这是一个不可多得的学习...
总结来说,Java Web的前后台技术构成了Web应用的完整开发体系,从后端的业务逻辑处理到前端的用户交互呈现,都有相应的技术和工具支持。而Tomcat作为应用服务器,是这一切运行的基础。掌握这些知识,对于开发和维护...
1. **PHP基础**:PHP是一种服务器端脚本语言,广泛用于Web开发,可以嵌入HTML中,用于生成动态网页内容。了解PHP的基本语法、变量、数据类型、控制结构、函数、类和对象是开发这个系统的前提。 2. **MySQL数据库**...
- 编写目的:项目开发总结报告旨在全面回顾项目过程,识别不足,进行改进,以优化系统,并吸取经验教训。 - 背景:开发的新闻发布系统旨在为用户提供及时准确的新闻浏览服务,同时方便新闻编辑发布内容。由12号...
总结来说,“springboot后台管理系统”利用Spring Boot 的便捷性,结合Shiro 的安全功能,以及MySQL 数据库的强大支持,构建了一个高效、安全、可扩展的后台管理系统。开发者可以在此基础上进行二次开发,满足各种...
MyKTV点歌系统采用C/S架构(客户端Client/服务器Server),分为前台客户端和后台服务器端,添加了一些辅助功能使得系统功能更加完整,各板块协调一致,更符合实际需求。 MyKTV点歌系统主要组成部分: (1)前台...