热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

关于webservice的问题效率问题

由于项目中很多接口需要维护,而业务方在调用接口的时候需要需要判断缓存情况,没有的话在直接从DB取数据,这样子带来了很多问题,业务方需要同时关注缓存和DB,现在有个方案就是采用服务化架构,把所有的接口都...
由于项目中很多接口需要维护,而业务方在调用接口的时候需要需要判断缓存情况,没有的话在直接从DB取数据,这样子带来了很多问题,业务方需要同时关注缓存和DB,现在有个方案就是采用服务化架构,把所有的接口都分装在服务里面,那么业务方只需要调用接口就好,不用管其他的,那么我的问题是:之前我通过取缓存或者DB 直接取出数据的,现在要走server(比如webservice) 走的是HTTP,那么岂不是更慢了?求解,谢谢。

回复内容:

由于项目中很多接口需要维护,而业务方在调用接口的时候需要需要判断缓存情况,没有的话在直接从DB取数据,这样子带来了很多问题,业务方需要同时关注缓存和DB,现在有个方案就是采用服务化架构,把所有的接口都分装在服务里面,那么业务方只需要调用接口就好,不用管其他的,那么我的问题是:之前我通过取缓存或者DB 直接取出数据的,现在要走server(比如webservice) 走的是HTTP,那么岂不是更慢了?求解,谢谢。

是会慢了,但是整个项目的结构就清晰了,以后开发速度和分工就更容易了,这也就是牺牲速度的原因。项目总是逐步增大的,随着项目的增大,就要逐渐考虑对其进行拆分,拆分的目的我想也不用多说,而拆分的方式大多就是把每个子块进行服务化,对外只暴露少部分必要的接口。

而至于刚才说到的变慢的问题,还有很多方式进行优化可以弥补这部分的慢,比如采用更高速的网络通道等。

通过对服务的分层,可以将项目变得更加条理清晰,开发的过程能够更加模块化,有助于敏捷开发。代码的重用率会更加提高。
当需要跨语言或者跨服务器的时候可以使用thrift等RPC框架进行传输,当需要使用其他语言的第三方内容的时候这样子架构的优势就上来了。

推荐阅读
  • 深入理解一致性哈希算法及其应用
    本文详细介绍了分布式系统中的一致性哈希算法,探讨其原理、优势及应用场景,帮助读者全面掌握这一关键技术。 ... [详细]
  • 本文详细介绍了网络存储技术的基本概念、分类及应用场景。通过分析直连式存储(DAS)、网络附加存储(NAS)和存储区域网络(SAN)的特点,帮助读者理解不同存储方式的优势与局限性。 ... [详细]
  • 本文详细介绍如何利用已搭建的LAMP(Linux、Apache、MySQL、PHP)环境,快速创建一个基于WordPress的内容管理系统(CMS)。WordPress是一款流行的开源博客平台,适用于个人或小型团队使用。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 远程过程调用(RPC)是一种允许客户端通过网络请求服务器执行特定功能的技术。它简化了分布式系统的交互,使开发者可以像调用本地函数一样调用远程服务,并获得返回结果。本文将深入探讨RPC的工作原理、发展历程及其在现代技术中的应用。 ... [详细]
  • 深入解析Spring Cloud微服务架构与分布式系统实战
    本文详细介绍了Spring Cloud在微服务架构和分布式系统中的应用,结合实际案例和最新技术,帮助读者全面掌握微服务的实现与优化。 ... [详细]
  • NFS(Network File System)即网络文件系统,是一种分布式文件系统协议,主要用于Unix和类Unix系统之间的文件共享。本文详细介绍NFS的配置文件/etc/exports和相关服务配置,帮助读者理解如何在Linux环境中配置NFS客户端。 ... [详细]
  • 本文探讨了Web开发与游戏开发之间的主要区别,旨在帮助开发者更好地理解两种开发领域的特性和需求。文章基于作者的实际经验和网络资料整理而成。 ... [详细]
  • 在Linux系统上构建Web服务器的详细步骤
    本文详细介绍了如何在Linux系统上搭建Web服务器的过程,包括安装Apache、PHP和MySQL等关键组件,以及遇到的一些常见问题及其解决方案。 ... [详细]
  • 优化联通光猫DNS服务器设置
    本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ... [详细]
  • 并发编程:深入理解设计原理与优化
    本文探讨了并发编程中的关键设计原则,特别是Java内存模型(JMM)的happens-before规则及其对多线程编程的影响。文章详细介绍了DCL双重检查锁定模式的问题及解决方案,并总结了不同处理器和内存模型之间的关系,旨在为程序员提供更深入的理解和最佳实践。 ... [详细]
  • 在编译BSP包过程中,遇到了一个与 'gets' 函数相关的编译错误。该问题通常发生在较新的编译环境中,由于 'gets' 函数已被弃用并视为安全漏洞。本文将详细介绍如何通过修改源代码和配置文件来解决这一问题。 ... [详细]
  • 使用WinForms 实现 RabbitMQ RPC 示例
    本文通过两个WinForms应用程序演示了如何使用RabbitMQ实现远程过程调用(RPC)。一个应用作为客户端发送请求,另一个应用作为服务端处理请求并返回响应。 ... [详细]
  • 深入解析Hadoop的核心组件与工作原理
    本文详细介绍了Hadoop的三大核心组件:分布式文件系统HDFS、资源管理器YARN和分布式计算框架MapReduce。通过分析这些组件的工作机制,帮助读者更好地理解Hadoop的架构及其在大数据处理中的应用。 ... [详细]
  • 本文详细介绍了在Spring Boot应用中,如何通过`TomcatEmbeddedServletContainerFactory.setTomcatContextCustomizers()`方法来定制和配置嵌入式Tomcat服务器的上下文环境,包括具体的代码示例。 ... [详细]
author-avatar
开心小笨笨猪
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有