202110-15 使用Feign远程调用时,序列化对象失败的解决 Feign远程调用序列化对象失败最近在搭建一个SpringCloud的微服务时,遇到了一个问题,在使用Feign远程调用时报错,返回对象没有无参构造方法,有其他的含参数的构造方法。本地自己搭建的微服务目录大概如下,才刚开始,后续会逐渐补充优化迭代,有兴趣的可以fork下地址:https://github.com/zhanghailang123/MyCloud给与指导意见。Eureka:注册中心服务端,采用Eureka注册中心EurekaClientA:其中的一个Eureka服务端,命名... 继续阅读 >
202105-20 PHP远程调用以及RPC框架 前言一个项目,从开始到版本更新,一直到最后的版本维护。功能在不断增多,对应的代码量也在不断增加,也就意味着项目变得更不可维护,这时候,我们需要用拆分的方式将一个项目打散,以便开发团队更好的对项目进行维护。分模块这个阶段,一般也是项目的初级阶段,由于人手不够,一个服务端的接口项目只有一个开发进行维护,根据开发的习惯,会把项目分成若干个模块进行开发,在一个项目下进行部署。这样做的缺点在于项目会随着版本... 继续阅读 >
202010-28 SpringBoot使用Netty实现远程调用的示例 前言众所周知我们在进行网络连接的时候,建立套接字连接是一个非常消耗性能的事情,特别是在分布式的情况下,用线程池去保持多个客户端连接,是一种非常消耗线程的行为。那么我们该通过什么技术去解决上述的问题呢,那么就不得不提一个网络连接的利器——Netty.正文NettyNetty是一个NIO客户端服务器框架:它可快速轻松地开发网络应用程序,例如协议服务器和客户端。它极大地简化和简化了网络编程,例如TCP和UDP套接字服务器。... 继续阅读 >
202010-10 SpringCloud Feign如何在远程调用中传输文件 1.文件远程传输主要涉及3点:请求方式,媒体类型,序列化与反序列化,把握住了这3点,基本上就可以搞2.使用Feign传输,首先搭建起Feign的架子2.1引入spring-cloud-starter-eureka-server依赖,用于启动一个eureka注册中心2.2引入spring-cloud-starter-eureka依赖,用于开启向eureka注册中心注册自己2.3在调用远程服务的客户端引入spring-cloud-starter-feign,用于使用feign3.既然是远程调用,项目中就必须至少有2个... 继续阅读 >
202010-09 Spring Cloud负载均衡及远程调用实现详解 负载均衡使用微服务后,为了能够承担高并发的压力,同一个服务可能会启动多个实例。这时候消费者就需要负载均衡,把请求分散到各个实例。负载均衡主要有两种设计:服务端负载均衡客户端负载均衡对于传统的分布式服务来说,大多使用服务端负载均衡。一般会使用Nginx或者ELB等工具作为负载均衡器,如下图:传统负载均衡而在SpringCloud中,使用的是「客户端负载均衡」的方式,使用「Ribbon」组件来实现客户端的负载均衡。只要引入了... 继续阅读 >
202010-07 Spring http服务远程调用实现过程解析 最近公司有个新的需求,写了一个接口,想要把服务暴露出去,但是这个服务所在的进程是非web项目,(可以理解成schedule/batch等进程项目),所以没有tomcat等容器,而且只有这一个服务,无论是加dubbo服务还是加tomcat等容器都显得复杂了。那么应该如何将服务暴露出去?经过网上搜索后,最终解决问题,记录在此。为了快速搭建,使用springboot来搭建项目:项目结构如图:首先需要创建一个接口,服务的提供者和服务的调用方都依赖这... 继续阅读 >
201411-07 Yii框架官方指南系列47——专题:Web Service Webservice 是一个软件系统,设计来支持计算机之间跨网络相互访问。在Web应用程序,它通常用一套API,可以被互联网访问和执行在远端系统主机上的被请求服务。系统主机所要求的服务。例如,以Flex为基础的客户端可能会援引函数实现在服务器端运行PHP的Web应用程序。Webservice依赖SOAP作为通信协议栈的基础层。Yii提供CWebService和CWebServiceAction简化了在Web应用程序实现Webservice。这些API以类形式实现,被称为service... 继续阅读 >