微服务以及SOA我们在上一篇《微服务架构简析》中已经谈及了,接下来我们来谈谈市面上流行的微服务架构产品有哪些?
微服务架构是互联网很热门的话题,是互联网技术发展的必然结果。它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。
虽然微服务架构没有公认的技术标准和规范或者草案,但业界已经有一些很有影响力的开源微服务架构框架提供了微服务的关键思路,例如 Dubbo 和 Spring Cloud。
微服务以及SOA我们在上一篇《微服务架构简析》中已经谈及了,接下来我们来谈谈市面上流行的微服务架构产品有哪些?
微服务架构是互联网很热门的话题,是互联网技术发展的必然结果。它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。
虽然微服务架构没有公认的技术标准和规范或者草案,但业界已经有一些很有影响力的开源微服务架构框架提供了微服务的关键思路,例如 Dubbo 和 Spring Cloud。
谈及微服务架构,2016年应该是软件业微服务爆发的元年,微服务到底是什么?
观察现有的软件业,使用单独一款开发语言区开发一款较为全面的产品很少,大多数都是各种语言编写的功能模块进行组装成完整的业务模型,
各语言效率优势互补。
微服务架构所强调的特点就是业务系统需要彻底的组件化与模块分割,原有的单个业务系统分割成多个小应用,每个小应用可以进行独立开发,管理,运行和测试,甚至连每个产品的前端(UI加结构),服务端(控制层,逻辑层和持久化层),数据库都是完全独立的产品,通过微服务架构将每个小应用进行整合,交互与集成,每个小应用不仅能够自己完全独立的功能,还可以运行其他小应用的服务,同时也将自己作为可供利用的服务对象。
什么是 Google Protocol Buffer? 假如您在网上搜索,应该会得到类似这样的文字介绍:
Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。他们用于 RPC 系统和持续数据存储系统。
Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或 RPC 数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。目前提供了 C++、Java、Python 三种语言的 API。
或许您和我一样,在第一次看完这些介绍后还是不明白 Protobuf 究竟是什么,那么我想一个简单的例子应该比较有助于理解它。
有不错的JDBC扩展库的存在使得调试变得很容易,例如P6spy,这是一个针对数据库访问操作的动态监测框架,它使得数据库数据可无缝截取和操纵,而不必对现有应用程序的代码作任何修改。P6Spy 分发包包括P6Log,它是一个可记录任何 Java 应用程序的所有JDBC事务的应用程序。其配置完成使用时,可以进行数据访问性能的监测。
在我们 Java 开发应用程序的过程中,难免会碰到系统的性能问题,特别在企业应用的开发过程中,都会与数据库进行打交道。当我们碰到数据库性能时,最有效的就是直接跟踪每一个 SQL 语句的执行情况,SQL 语句的优化、索引的优化往往也是最容易取得最直接的效果的。
在应用程序开发过程中,为了方便调试,通常都需要知道在DAO层程序执行的SQL是什么,而P6spy这个组件正是提供了该功能。
已在Github上开源:https://github.com/p6spy/p6spy