今天跟同事讨论起怎么做好一个内部系统,别的系统会跟这个系统进行对接。
整理如下:
1.从API上的设计原则来说,以下的问题需要考虑:
1)API的扩展性要足够好,比如说,满足A用户的同时,假设用户B有新的需求,代码改动以后,不能影响A的客户端代码。常见的扩展性比较好的格式有XML API和Json,而WSDL比较差,一旦结构改动,客户端的调用代码也必须重构。
2)API的设计要考虑性能,比如说对于核心业务,或者访问比较频繁的API应该提供Combine的功能,可以让request一起发,结果可以一起返回。
3)如果给别的系统提供的是客户端的Jar包,要考虑别的系统通常很有可能在多线程中运行,要考虑多线程并发访问的问题。
4)API的定义中,需要加入版本号
5)API的命名通常也比较重要,要简单易懂,别人一看就很轻易的看看懂。
6)同样API的设计要考虑安全性,如果这个内部系统外网需要访问,通常可以采用OAuth1.0或者2.0的规范来设计
2.从架构上来说,以下几个方面需要考虑
1)平台架构同样要具有很强的伸缩性,当访问量增加后,能够通过简单的增加server的数量,就可以达到目的。
偶尔看到一篇好文,关于外部开放API需要考虑的问题:
http://www.xoriant.com/blog/product-ideation/public-api-points-to-consider.html
分享到:
相关推荐
学校内部工资管理系统是为了解决学校内部的工资管理问题而设计的。该系统旨在提高学校内部的工资管理效率,减少人工错误和账务混乱。系统的设计基于实际需求,考虑了学校内部的各种工资计算规则和出勤记录规则。 2....
内部控制信息系统建设方案是企业在信息化管理过程中,为了提升管理效率、防范风险、确保合规性而实施的一项重要工程。这个方案通常涵盖了多个方面,包括系统的需求分析、设计、开发、测试、上线以及后期的维护和优化...
内部审核基于《检验检测机构资质认定评审准则》4.5.15的规定,实验室需定期进行,通常每年至少一次,由质量主管策划并制定审核方案。审核涉及所有部门和活动,审核员需经过培训并具备相应资格,确保独立性。审核发现...
规划时要考虑以下几个方面: 1. **培训对象的定位**:根据员工的不同岗位、级别和阶段,定制不同的培训内容,确保每个群体都能接收到与其需求相符的知识和技能。 2. **培训内容的设定**:通过调查了解员工的工作...
【描述】:这个压缩包文件聚焦于户外通讯机房的内部布线系统,是电信设备领域的一个重要组成部分。内部布线系统在通信设施中起着至关重要的作用,它确保了信号的有效传输和设备之间的高效连接。 【详细知识点】: ...
总结来说,经济新常态对地税系统的财务管理提出了新的挑战,要求从制度建设、内部控制、人力资源、预算编制等多个层面进行全面改革和提升,以适应新的经济环境,提高财务管理效率,保障地税系统的健康发展。...
总的来说,电力调度自动化主站系统的运行维护是一个复杂而关键的过程,涉及到多方面的管理与技术问题。通过不断改进和完善,可以有效地提高系统的稳定性和安全性,保障电力供应的可靠性,从而为社会经济发展提供稳定...
一个成功的OA系统离不开前期深入细致的需求调研与分析。这一过程涉及到对业务流程的理解、用户体验的设计以及系统功能的规划等多个方面。需求分析的质量直接决定了后续设计开发工作的方向与效率。 1. **明确业务...
打造一支包含财务、工程、经济、法律、计算机专业人员的最优的知识结构、年龄结构,为做好高校内部审计工作打下基础保障。 改进审计模式,提升工作质量:审计模式决定了审计工作的目标与方法。大数据理念下,改进...
其拓扑结构通常是在电力公司内部设置一个文件服务器,用以存储各种数据信息,并通过网桥机将调度数据传送到服务器中。 在系统开发平台的选择上,服务器和工作站的硬件配置要足够强大,以支持高效率的数据处理。操作...
因此,企业信息系统整合的目标是将分散的信息资源整合到一个统一的平台上,例如企业信息门户,以便能够共享这些信息资源,为企业的决策管理和资源优化提供科学依据,从而降低运营成本并提高经济效益。 #### 技术...
OA办公系统,全称为Office Automation System,是一种基于网络技术,用于企业内部自动化处理日常办公...然而,选择和实施OA系统时,企业应充分考虑自身需求,选择合适的软件供应商,同时要做好数据安全和系统维护工作。
### 施工企业做好会计信息化问题的思考 #### 摘要 随着我国市场经济的快速发展,施工企业作为国民经济的重要组成部分,其规模和发展速度都在不断壮大。然而,与此同时,施工企业在财务管理方面面临着诸多挑战。...
系统分析: 是指把要解决的问题作为一个系统,对系统要素进行综合分析,找出解决问题的可行方案的咨询方法。 系统设计: 是新系统的物理设计阶段。根据系统分析阶段所确定的新系统的逻辑模型、功能要求, 在用户...
综上所述,现代化医疗建筑内部精装修施工管理是一个涉及多领域、多环节的综合性工作,需要在设计、施工、材料选择、安全控制、质量管理及沟通协调等方面下足功夫,以创造出既满足医疗功能又具有良好就医环境的空间。
第七章详细探讨了嵌入式系统Boot Loader,Boot Loader是嵌入式系统启动时运行的第一段代码,负责初始化硬件设备、建立内存空间映射,从而为操作系统及其他软件的加载和运行做好准备。 第八章重点讲解了嵌入式系统...
解决这个问题的方法是在IMG(Implementation Guide)系统中通过路径“Create User for Background Processes”创建一个新的背景用户。 - 通常情况下,系统默认提供的背景用户名为“BWREMOTE”。如果系统已经存在该...
同时,也要考虑系统的易用性、稳定性和扩展性。 接着,项目计划安排是保证项目顺利进行的关键。这包括确定项目的时间表、资源分配、里程碑以及风险管理策略。对于学生信息管理系统,可能的计划包括:需求文档编写、...
这种模拟系统为学习者提供了一个安全、便捷的学习环境,无需真实资金就能体验到完整的银行操作流程,从而提升理论知识与实践技能。 银行模拟系统的核心功能包括: 1. **账户管理**:用户可以创建虚拟账户,进行...
总的来说,这个内部审核管理制度为企业提供了一套严谨、系统的方法,以持续改进安全管理,确保风险预控体系的有效运行。通过定期的内部审核,企业能及时识别潜在风险,预防事故的发生,提升整体的安全管理水平。