实例介绍
从零开始写分布式服务框架 分布式 书籍 源代码 对高并发系统设计、服务化架构、互联网中间件开发有兴趣的可以下载
【实例截图】
【核心代码】
从零开始写分布式服务框架_源代码
└── 从零开始写分布式服务框架_源代码
├── __MACOSX
│ └── 代码
│ ├── 完整的分布式服务框架ares-remoting
│ │ └── ares-remoting
│ │ └── src
│ │ ├── main
│ │ │ ├── java
│ │ │ │ └── ares
│ │ │ │ └── remoting
│ │ │ │ ├── framework
│ │ │ │ │ ├── cluster
│ │ │ │ │ │ ├── engine
│ │ │ │ │ │ └── impl
│ │ │ │ │ ├── helper
│ │ │ │ │ ├── model
│ │ │ │ │ ├── provider
│ │ │ │ │ ├── revoker
│ │ │ │ │ ├── serialization
│ │ │ │ │ │ ├── common
│ │ │ │ │ │ ├── engine
│ │ │ │ │ │ └── serializer
│ │ │ │ │ │ └── impl
│ │ │ │ │ ├── spring
│ │ │ │ │ └── zookeeper
│ │ │ │ └── test
│ │ │ └── resources
│ │ │ └── META-INF
│ │ └── test
│ ├── 第一章
│ │ ├── axis2-spring
│ │ │ └── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── axis2
│ │ │ │ │ ├── client
│ │ │ │ │ └── service
│ │ │ │ ├── resources
│ │ │ │ └── webapp
│ │ │ │ ├── META-INF
│ │ │ │ └── WEB-INF
│ │ │ │ └── services
│ │ │ │ └── sampleservices
│ │ │ │ └── META-INF
│ │ │ └── test
│ │ ├── cxf-spring
│ │ │ └── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── cxf
│ │ │ │ │ ├── client
│ │ │ │ │ └── service
│ │ │ │ ├── resources
│ │ │ │ └── webapp
│ │ │ │ ├── META-INF
│ │ │ │ └── WEB-INF
│ │ │ └── test
│ │ ├── grpc-demo
│ │ │ └── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── com
│ │ │ │ │ └── grpc
│ │ │ │ └── proto
│ │ │ └── test
│ │ ├── http-client
│ │ │ └── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── http
│ │ │ │ │ ├── client
│ │ │ │ │ └── service
│ │ │ │ ├── resources
│ │ │ │ └── webapp
│ │ │ │ ├── META-INF
│ │ │ │ └── WEB-INF
│ │ │ └── test
│ │ ├── rmi
│ │ │ ├── out
│ │ │ │ └── production
│ │ │ │ └── java_code
│ │ │ │ └── com
│ │ │ │ └── rmi
│ │ │ └── src
│ │ │ └── com
│ │ │ └── rmi
│ │ ├── rpc-framework
│ │ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ ├── framework
│ │ │ ├── invoke
│ │ │ └── service
│ │ ├── thrift-annotation
│ │ │ └── src
│ │ │ ├── main
│ │ │ │ └── java
│ │ │ │ └── thrift
│ │ │ │ └── annotation
│ │ │ │ ├── client
│ │ │ │ └── server
│ │ │ └── test
│ │ └── thrift-gencode
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ │ ├── serializer
│ │ │ └── thrift
│ │ │ └── gencode
│ │ │ ├── invoker
│ │ │ └── service
│ │ └── resources
│ │ └── thrift_files
│ ├── 第三章
│ │ ├── avro
│ │ │ └── idea-avro-plugin
│ │ └── serialization
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── avro
│ │ │ │ └── java
│ │ │ │ ├── avro
│ │ │ │ ├── engine
│ │ │ │ ├── model
│ │ │ │ ├── serializer
│ │ │ │ │ └── impl
│ │ │ │ └── thrift
│ │ │ └── test
│ │ └── target
│ │ ├── classes
│ │ │ ├── avro
│ │ │ ├── engine
│ │ │ ├── model
│ │ │ ├── serializer
│ │ │ │ └── impl
│ │ │ └── thrift
│ │ ├── generated-sources
│ │ └── maven-archiver
│ ├── 第五章
│ │ └── zookeeper-demo
│ │ └── src
│ │ ├── main
│ │ │ └── java
│ │ │ └── zk
│ │ └── test
│ ├── 第六章
│ │ ├── java-io
│ │ │ └── src
│ │ │ ├── main
│ │ │ │ └── java
│ │ │ │ ├── aio
│ │ │ │ │ └── echo
│ │ │ │ ├── bio
│ │ │ │ │ ├── bytes
│ │ │ │ │ │ └── stream
│ │ │ │ │ ├── chars
│ │ │ │ │ │ └── stream
│ │ │ │ │ └── echo
│ │ │ │ ├── common
│ │ │ │ ├── nio
│ │ │ │ │ ├── block
│ │ │ │ │ │ └── echo
│ │ │ │ │ └── echo
│ │ │ │ └── nio2
│ │ │ └── test
│ │ └── netty-demo
│ │ └── src
│ │ ├── main
│ │ │ └── java
│ │ │ └── netty
│ │ │ ├── custom
│ │ │ │ ├── v1
│ │ │ │ └── v2
│ │ │ ├── echo
│ │ │ ├── heartbeat
│ │ │ ├── javaserialize
│ │ │ ├── marshalling
│ │ │ ├── protobuf
│ │ │ └── stringmessage
│ │ │ ├── delimiterbase
│ │ │ ├── fixedlength
│ │ │ └── linebase
│ │ └── test
│ └── 第四章
│ └── spring-rpc
│ ├── src
│ │ ├── main
│ │ │ ├── java
│ │ │ │ ├── hessian
│ │ │ │ │ └── invoker
│ │ │ │ │ └── rpc
│ │ │ │ ├── http
│ │ │ │ │ └── invoker
│ │ │ │ │ └── rpc
│ │ │ │ ├── rmi
│ │ │ │ │ └── invoker
│ │ │ │ │ └── rpc
│ │ │ │ └── rpc
│ │ │ │ └── common
│ │ │ ├── resources
│ │ │ └── webapp
│ │ │ ├── META-INF
│ │ │ └── WEB-INF
│ │ └── test
│ └── target
│ ├── classes
│ │ ├── hessian
│ │ │ └── invoker
│ │ │ └── rpc
│ │ ├── http
│ │ │ └── invoker
│ │ │ └── rpc
│ │ ├── rmi
│ │ │ └── invoker
│ │ │ └── rpc
│ │ └── rpc
│ │ └── common
│ ├── generated-sources
│ ├── maven-archiver
│ └── rpc-1.0-SNAPSHOT
│ ├── META-INF
│ └── WEB-INF
│ ├── classes
│ │ ├── hessian
│ │ │ └── invoker
│ │ │ └── rpc
│ │ ├── http
│ │ │ └── invoker
│ │ │ └── rpc
│ │ ├── rmi
│ │ │ └── invoker
│ │ │ └── rpc
│ │ └── rpc
│ │ └── common
│ └── lib
└── 代码
├── 完整的分布式服务框架ares-remoting
│ └── ares-remoting
│ ├── ares-remoting.iml
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ │ └── ares
│ │ └── remoting
│ │ ├── framework
│ │ │ ├── cluster
│ │ │ │ ├── ClusterStrategy.java
│ │ │ │ ├── engine
│ │ │ │ │ └── ClusterEngine.java
│ │ │ │ └── impl
│ │ │ │ ├── ClusterStrategyEnum.java
│ │ │ │ ├── HashClusterStrategyImpl.java
│ │ │ │ ├── PollingClusterStrategyImpl.java
│ │ │ │ ├── RandomClusterStrategyImpl.java
│ │ │ │ ├── WeightPollingClusterStrategyImpl.java
│ │ │ │ └── WeightRandomClusterStrategyImpl.java
│ │ │ ├── helper
│ │ │ │ ├── IPHelper.java
│ │ │ │ └── PropertyConfigeHelper.java
│ │ │ ├── model
│ │ │ │ ├── AresRequest.java
│ │ │ │ ├── AresResponse.java
│ │ │ │ ├── AresResponseWrapper.java
│ │ │ │ ├── InvokerService.java
│ │ │ │ └── ProviderService.java
│ │ │ ├── provider
│ │ │ │ ├── NettyServerInvokeHandler.java
│ │ │ │ ├── NettyServer.java
│ │ │ │ ├── ProviderFactoryBean.java
│ │ │ │ └── ProviderProxyBeanFactory.java
│ │ │ ├── revoker
│ │ │ │ ├── NettyChannelPoolFactory.java
│ │ │ │ ├── NettyClientInvokeHandler.java
│ │ │ │ ├── RevokerFactoryBean.java
│ │ │ │ ├── RevokerProxyBeanFactory.java
│ │ │ │ ├── RevokerResponseHolder.java
│ │ │ │ └── RevokerServiceCallable.java
│ │ │ ├── serialization
│ │ │ │ ├── common
│ │ │ │ │ ├── FDateJsonDeserializer.java
│ │ │ │ │ ├── FDateJsonSerializer.java
│ │ │ │ │ └── SerializeType.java
│ │ │ │ ├── engine
│ │ │ │ │ └── SerializerEngine.java
│ │ │ │ ├── NettyDecoderHandler.java
│ │ │ │ ├── NettyEncoderHandler.java
│ │ │ │ └── serializer
│ │ │ │ ├── impl
│ │ │ │ │ ├── AvroSerializer.java
│ │ │ │ │ ├── DefaultJavaSerializer.java
│ │ │ │ │ ├── HessianSerializer.java
│ │ │ │ │ ├── JSONSerializer.java
│ │ │ │ │ ├── MarshallingSerializer.java
│ │ │ │ │ ├── ProtocolBufferSerializer.java
│ │ │ │ │ ├── ProtoStuffSerializer.java
│ │ │ │ │ ├── ThriftSerializer.java
│ │ │ │ │ └── XmlSerializer.java
│ │ │ │ └── ISerializer.java
│ │ │ ├── spring
│ │ │ │ ├── AresRemoteReferenceNamespaceHandler.java
│ │ │ │ ├── AresRemoteServiceNamespaceHandler.java
│ │ │ │ ├── ProviderFactoryBeanDefinitionParser.java
│ │ │ │ └── RevokerFactoryBeanDefinitionParser.java
│ │ │ └── zookeeper
│ │ │ ├── IRegisterCenter4Governance.java
│ │ │ ├── IRegisterCenter4Invoker.java
│ │ │ ├── IRegisterCenter4Provider.java
│ │ │ └── RegisterCenter.java
│ │ └── test
│ │ ├── HelloServiceImpl.java
│ │ ├── HelloService.java
│ │ ├── MainClient.java
│ │ └── MainServer.java
│ └── resources
│ ├── ares-client.xml
│ ├── ares_remoting.properties
│ ├── ares-server.xml
│ └── META-INF
│ ├── remote-reference.xsd
│ ├── remote-service.xsd
│ ├── spring.handlers
│ └── spring.schemas
├── 第一章
│ ├── axis2-spring
│ │ ├── axis2-spring.iml
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ │ └── axis2
│ │ │ ├── client
│ │ │ │ └── Axis2Client.java
│ │ │ └── service
│ │ │ ├── HelloServiceImpl.java
│ │ │ └── HelloService.java
│ │ ├── resources
│ │ │ ├── axis2-client.xml
│ │ │ └── axis2-server.xml
│ │ └── webapp
│ │ ├── index.htm
│ │ ├── META-INF
│ │ │ └── MANIFEST.mf
│ │ └── WEB-INF
│ │ ├── services
│ │ │ └── sampleservices
│ │ │ └── META-INF
│ │ │ └── services.xml
│ │ └── web.xml
│ ├── cxf-spring
│ │ ├── cxf-spring.iml
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ │ └── cxf
│ │ │ ├── client
│ │ │ │ └── CxfClient.java
│ │ │ └── service
│ │ │ ├── HelloServiceImpl.java
│ │ │ └── HelloService.java
│ │ ├── resources
│ │ │ ├── cxf-client.xml
│ │ │ └── cxf-server.xml
│ │ └── webapp
│ │ ├── index.htm
│ │ ├── META-INF
│ │ │ └── MANIFEST.mf
│ │ └── WEB-INF
│ │ ├── springmvc-servlet.xml
│ │ └── web.xml
│ ├── grpc-demo
│ │ ├── grpc-demo.iml
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ │ └── com
│ │ │ └── grpc
│ │ │ ├── HelloClient.java
│ │ │ └── HelloServer.java
│ │ └── proto
│ │ └── sayHello.proto
│ ├── http-client
│ │ ├── httpclient.iml
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ │ └── http
│ │ │ ├── ApiResponse.java
│ │ │ ├── client
│ │ │ │ └── HttpClientInvoke.java
│ │ │ ├── HttpInvokeCallable.java
│ │ │ └── service
│ │ │ └── HelloController.java
│ │ ├── resources
│ │ │ ├── applicationContext-web.xml
│ │ │ └── applicationContext.xml
│ │ └── webapp
│ │ ├── index.htm
│ │ ├── META-INF
│ │ │ └── MANIFEST.mf
│ │ └── WEB-INF
│ │ ├── springmvc-servlet.xml
│ │ └── web.xml
│ ├── rmi
│ │ ├── java_code.iml
│ │ ├── out
│ │ │ └── production
│ │ │ └── java_code
│ │ │ ├── com
│ │ │ │ └── rmi
│ │ │ │ ├── ClientMain.class
│ │ │ │ ├── CustomerSocketFactory.class
│ │ │ │ ├── HelloService.class
│ │ │ │ ├── HelloServiceImpl.class
│ │ │ │ └── ServiceMain.class
│ │ │ └── Main.class
│ │ └── src
│ │ └── com
│ │ └── rmi
│ │ ├── ClientMain.java
│ │ ├── CustomerSocketFactory.java
│ │ ├── HelloServiceImpl.java
│ │ ├── HelloService.java
│ │ └── ServiceMain.java
│ ├── rpc-framework
│ │ ├── pom.xml
│ │ ├── rpc-framework.iml
│ │ └── src
│ │ └── main
│ │ └── java
│ │ ├── framework
│ │ │ ├── ConsumerProxy.java
│ │ │ └── ProviderReflect.java
│ │ ├── invoke
│ │ │ ├── RpcConsumerMain.java
│ │ │ └── RpcProviderMain.java
│ │ └── service
│ │ ├── HelloServiceImpl.java
│ │ └── HelloService.java
│ ├── thrift-annotation
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── thrift
│ │ │ └── annotation
│ │ │ ├── client
│ │ │ │ └── ClientMain.java
│ │ │ └── server
│ │ │ ├── HelloServiceImpl.java
│ │ │ ├── HelloService.java
│ │ │ ├── ServerMain.java
│ │ │ └── User.java
│ │ └── thrift-annotation.iml
│ └── thrift-gencode
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ │ ├── serializer
│ │ │ └── ThriftSerializer.java
│ │ └── thrift
│ │ └── gencode
│ │ ├── invoker
│ │ │ ├── AsynInvokerCallback.java
│ │ │ ├── NonblockingInvoker.java
│ │ │ └── SimpleInvoker.java
│ │ └── service
│ │ ├── HelloServiceImpl.java
│ │ ├── HelloService.java
│ │ └── User.java
│ └── resources
│ └── thrift_files
│ ├── HelloService.thrift
│ └── UserModel.thrift
├── 第三章
│ ├── avro
│ │ └── idea-avro-plugin
│ │ └── intellij-avro_0.2.1.jar
│ └── serialization
│ ├── pom.xml
│ ├── serialization.iml
│ ├── src
│ │ └── main
│ │ ├── avro
│ │ │ ├── Demo.avsc
│ │ │ ├── StudyExample.avdl
│ │ │ └── user.avsc
│ │ └── java
│ │ ├── avro
│ │ │ ├── DataExample.java
│ │ │ ├── Demo.java
│ │ │ ├── ExampleService.java
│ │ │ ├── Suit.java
│ │ │ └── User.java
│ │ ├── engine
│ │ │ └── SerializerEngine.java
│ │ ├── model
│ │ │ ├── AddressBookProtos.java
│ │ │ ├── FDateJsonDeserializer.java
│ │ │ ├── FDateJsonSerializer.java
│ │ │ └── User.java
│ │ ├── ObjenesisDemo.java
│ │ ├── serializer
│ │ │ ├── impl
│ │ │ │ ├── AvroSerializer.java
│ │ │ │ ├── DefaultJavaSerializer.java
│ │ │ │ ├── HessianSerializer.java
│ │ │ │ ├── JSON2Serializer.java
│ │ │ │ ├── JSONSerializer.java
│ │ │ │ ├── MarshallingSerializer.java
│ │ │ │ ├── ProtoBufSerializer.java
│ │ │ │ ├── ProtoStuffSerializer.java
│ │ │ │ ├── ThriftSerializer.java
│ │ │ │ ├── XML2Serializer.java
│ │ │ │ └── XmlSerializer.java
│ │ │ ├── ISerializer.java
│ │ │ ├── MessagePackSerializer.java
│ │ │ ├── person.proto
│ │ │ ├── SerializeType.java
│ │ │ └── Test.java
│ │ └── thrift
│ │ └── User.java
│ ├── target
│ │ ├── classes
│ │ │ ├── avro
│ │ │ │ ├── DataExample$1.class
│ │ │ │ ├── DataExample$Builder.class
│ │ │ │ ├── DataExample.class
│ │ │ │ ├── Demo$1.class
│ │ │ │ ├── Demo$Builder.class
│ │ │ │ ├── Demo.class
│ │ │ │ ├── ExampleService$Callback.class
│ │ │ │ ├── ExampleService.class
│ │ │ │ ├── Suit.class
│ │ │ │ ├── User$1.class
│ │ │ │ ├── User$Builder.class
│ │ │ │ └── User.class
│ │ │ ├── engine
│ │ │ │ └── SerializerEngine.class
│ │ │ ├── model
│ │ │ │ ├── AddressBookProtos$1.class
│ │ │ │ ├── AddressBookProtos$AddressBook$1.class
│ │ │ │ ├── AddressBookProtos$AddressBook$Builder.class
│ │ │ │ ├── AddressBookProtos$AddressBook.class
│ │ │ │ ├── AddressBookProtos$AddressBookOrBuilder.class
│ │ │ │ ├── AddressBookProtos$Person$1.class
│ │ │ │ ├── AddressBookProtos$Person$Builder.class
│ │ │ │ ├── AddressBookProtos$Person$PhoneNumber$1.class
│ │ │ │ ├── AddressBookProtos$Person$PhoneNumber$Builder.class
│ │ │ │ ├── AddressBookProtos$Person$PhoneNumber.class
│ │ │ │ ├── AddressBookProtos$Person$PhoneNumberOrBuilder.class
│ │ │ │ ├── AddressBookProtos$Person$PhoneType$1.class
│ │ │ │ ├── AddressBookProtos$Person$PhoneType.class
│ │ │ │ ├── AddressBookProtos$Person.class
│ │ │ │ ├── AddressBookProtos$PersonOrBuilder.class
│ │ │ │ ├── AddressBookProtos.class
│ │ │ │ ├── FDateJsonDeserializer.class
│ │ │ │ ├── FDateJsonSerializer.class
│ │ │ │ └── User.class
│ │ │ ├── ObjenesisDemo$MessageInfo.class
│ │ │ ├── ObjenesisDemo.class
│ │ │ ├── serializer
│ │ │ │ ├── impl
│ │ │ │ │ ├── AvroSerializer.class
│ │ │ │ │ ├── DefaultJavaSerializer.class
│ │ │ │ │ ├── HessianSerializer.class
│ │ │ │ │ ├── JSON2Serializer.class
│ │ │ │ │ ├── JSONSerializer.class
│ │ │ │ │ ├── MarshallingSerializer.class
│ │ │ │ │ ├── ProtoBufSerializer.class
│ │ │ │ │ ├── ProtoStuffSerializer.class
│ │ │ │ │ ├── ThriftSerializer.class
│ │ │ │ │ ├── XML2Serializer.class
│ │ │ │ │ └── XmlSerializer.class
│ │ │ │ ├── ISerializer.class
│ │ │ │ ├── SerializeType.class
│ │ │ │ └── Test.class
│ │ │ └── thrift
│ │ │ ├── User$1.class
│ │ │ ├── User$_Fields.class
│ │ │ ├── User$UserStandardScheme.class
│ │ │ ├── User$UserStandardSchemeFactory.class
│ │ │ ├── User$UserTupleScheme.class
│ │ │ ├── User$UserTupleSchemeFactory.class
│ │ │ └── User.class
│ │ ├── maven-archiver
│ │ │ └── pom.properties
│ │ └── serialization-1.0-SNAPSHOT.jar
│ └── users.avro
├── 第五章
│ └── zookeeper-demo
│ ├── pom.xml
│ ├── src
│ │ └── main
│ │ └── java
│ │ └── zk
│ │ └── ZKClientDemo.java
│ └── zookeeper-demo.iml
├── 第六章
│ ├── java-io
│ │ ├── 1.txt
│ │ ├── java-io.iml
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ └── java
│ │ │ ├── aio
│ │ │ │ ├── echo
│ │ │ │ │ ├── AcceptCompletionHandler.java
│ │ │ │ │ ├── AIOEchoClient.java
│ │ │ │ │ ├── AIOEchoServer.java
│ │ │ │ │ ├── AsyncEchoClientHandler.java
│ │ │ │ │ ├── AsyncEchoServerHandler.java
│ │ │ │ │ └── ReadCompletionHandler.java
│ │ │ │ └── echo.zip
│ │ │ ├── bio
│ │ │ │ ├── bytes
│ │ │ │ │ └── stream
│ │ │ │ │ ├── BufferedStream.java
│ │ │ │ │ ├── ByteArrayStream.java
│ │ │ │ │ ├── DataStream.java
│ │ │ │ │ ├── FileStream.java
│ │ │ │ │ ├── PrintsStream.java
│ │ │ │ │ ├── src.txt
│ │ │ │ │ └── User.java
│ │ │ │ ├── chars
│ │ │ │ │ └── stream
│ │ │ │ │ ├── BufferedStream.java
│ │ │ │ │ ├── CharArray.java
│ │ │ │ │ └── OutputStreamOrInputSteam.java
│ │ │ │ ├── echo
│ │ │ │ │ ├── BIOEchoClient.java
│ │ │ │ │ ├── BIOEchoServerHandler.java
│ │ │ │ │ └── BIOEchoService.java
│ │ │ │ ├── FileTest.java
│ │ │ │ └── StreamsTest.java
│ │ │ ├── common
│ │ │ │ └── User.java
│ │ │ ├── nio
│ │ │ │ ├── block
│ │ │ │ │ └── echo
│ │ │ │ │ ├── EchoClient.java
│ │ │ │ │ ├── EchoHandler.java
│ │ │ │ │ └── EchoServer.java
│ │ │ │ ├── BufferDemo.java
│ │ │ │ ├── ChannelDemo.java
│ │ │ │ └── echo
│ │ │ │ ├── NIOClientHandler.java
│ │ │ │ ├── NIOEchoClient.java
│ │ │ │ ├── NIOEchoServerHandler.java
│ │ │ │ └── NIOEchoServer.java
│ │ │ └── nio2
│ │ │ ├── AsynchronousFileDemo.java
│ │ │ ├── FilesDemo.java
│ │ │ └── PathDemo.java
│ │ ├── src.txt
│ │ ├── target.txt
│ │ └── user.txt
│ └── netty-demo
│ ├── netty-demo.iml
│ ├── pom.xml
│ └── src
│ └── main
│ └── java
│ └── netty
│ ├── custom
│ │ ├── v1
│ │ │ ├── CustomClientHandler.java
│ │ │ ├── CustomClient.java
│ │ │ ├── CustomServerHandler.java
│ │ │ ├── CustomServer.java
│ │ │ ├── CustomV1Decoder.java
│ │ │ ├── CustomV1Encoder.java
│ │ │ ├── HessianSerializer.java
│ │ │ └── UserInfo.java
│ │ └── v2
│ │ ├── CustomClientHandler.java
│ │ ├── CustomClient.java
│ │ ├── CustomServerHandler.java
│ │ ├── CustomServer.java
│ │ ├── CustomV2Decoder.java
│ │ ├── CustomV2Encoder.java
│ │ ├── HessianSerializer.java
│ │ └── UserInfo.java
│ ├── echo
│ │ ├── EchoClientHandler.java
│ │ ├── EchoClient.java
│ │ ├── EchoServerHandler.java
│ │ └── EchoServer.java
│ ├── heartbeat
│ │ ├── HeartBeatClientHandler.java
│ │ ├── HeartBeatsClient.java
│ │ ├── HeartBeatServerHandler.java
│ │ └── HeartBeatServer.java
│ ├── javaserialize
│ │ ├── JavaSerializeClientHandler.java
│ │ ├── JavaSerializeClient.java
│ │ ├── JavaSerializeServerHandler.java
│ │ ├── JavaSerializeServer.java
│ │ └── UserInfo.java
│ ├── marshalling
│ │ ├── MarshallingCodeCFactory.java
│ │ ├── MarshallingSerializeClientHandler.java
│ │ ├── MarshallingSerializeClient.java
│ │ ├── MarshallingSerializeServerHandler.java
│ │ ├── MarshallingSerializeServer.java
│ │ └── UserInfo.java
│ ├── protobuf
│ │ ├── ProtobufClientHandler.java
│ │ ├── ProtobufClient.java
│ │ ├── ProtobufServer.java
│ │ ├── ProtoServerHandler.java
│ │ ├── UserInfo.java
│ │ └── user.proto
│ └── stringmessage
│ ├── delimiterbase
│ │ ├── DelimiterBaseClientHandler.java
│ │ ├── DelimiterBaseClient.java
│ │ ├── DelimiterBaseServerHandler.java
│ │ └── DelimiterBaseServer.java
│ ├── fixedlength
│ │ ├── FixedLengthClientHandler.java
│ │ ├── FixedLengthClient.java
│ │ ├── FixedLengthServerHandler.java
│ │ └── FixedLengthServer.java
│ └── linebase
│ ├── LineBaseClientHandler.java
│ ├── LineBaseClient.java
│ ├── LineBaseServerHandler.java
│ └── LineBaseServer.java
└── 第四章
└── spring-rpc
├── pom.xml
├── spring-rpc.iml
├── src
│ └── main
│ ├── java
│ │ ├── hessian
│ │ │ └── invoker
│ │ │ └── rpc
│ │ │ └── HessianInvokerClient.java
│ │ ├── http
│ │ │ └── invoker
│ │ │ └── rpc
│ │ │ └── HttpInvokeClient.java
│ │ ├── rmi
│ │ │ └── invoker
│ │ │ └── rpc
│ │ │ └── RmiInvokerClient.java
│ │ └── rpc
│ │ └── common
│ │ ├── User.java
│ │ ├── UserServiceImpl.java
│ │ └── UserService.java
│ ├── resources
│ │ ├── common-config.xml
│ │ ├── hessian-rpc-client.xml
│ │ ├── hessian-rpc-server.xml
│ │ ├── httpinvoker-rpc-client.xml
│ │ ├── httpinvoker-rpc-server.xml
│ │ ├── rmi-rpc-client.xml
│ │ └── rmi-rpc-server.xml
│ └── webapp
│ ├── index.htm
│ ├── META-INF
│ │ └── MANIFEST.mf
│ └── WEB-INF
│ ├── springmvc-servlet.xml
│ └── web.xml
└── target
├── classes
│ ├── common-config.xml
│ ├── hessian
│ │ └── invoker
│ │ └── rpc
│ │ └── HessianInvokerClient.class
│ ├── hessian-rpc-client.xml
│ ├── hessian-rpc-server.xml
│ ├── http
│ │ └── invoker
│ │ └── rpc
│ │ └── HttpInvokeClient.class
│ ├── httpinvoker-rpc-client.xml
│ ├── httpinvoker-rpc-server.xml
│ ├── rmi
│ │ └── invoker
│ │ └── rpc
│ │ └── RmiInvokerClient.class
│ ├── rmi-rpc-client.xml
│ ├── rmi-rpc-server.xml
│ └── rpc
│ └── common
│ ├── User.class
│ ├── UserService.class
│ └── UserServiceImpl.class
├── maven-archiver
│ └── pom.properties
├── rpc-1.0-SNAPSHOT
│ ├── index.htm
│ ├── META-INF
│ │ └── MANIFEST.mf
│ └── WEB-INF
│ ├── classes
│ │ ├── common-config.xml
│ │ ├── hessian
│ │ │ └── invoker
│ │ │ └── rpc
│ │ │ └── HessianInvokerClient.class
│ │ ├── hessian-rpc-client.xml
│ │ ├── hessian-rpc-server.xml
│ │ ├── http
│ │ │ └── invoker
│ │ │ └── rpc
│ │ │ └── HttpInvokeClient.class
│ │ ├── httpinvoker-rpc-client.xml
│ │ ├── httpinvoker-rpc-server.xml
│ │ ├── rmi
│ │ │ └── invoker
│ │ │ └── rpc
│ │ │ └── RmiInvokerClient.class
│ │ ├── rmi-rpc-client.xml
│ │ ├── rmi-rpc-server.xml
│ │ └── rpc
│ │ └── common
│ │ ├── User.class
│ │ ├── UserService.class
│ │ └── UserServiceImpl.class
│ ├── lib
│ │ ├── aspectjrt-1.8.0.jar
│ │ ├── aspectjweaver-1.8.0.jar
│ │ ├── commons-lang3-3.3.2.jar
│ │ ├── commons-logging-1.2.jar
│ │ ├── hessian-4.0.7.jar
│ │ ├── servlet-api-2.5.jar
│ │ ├── spring-aop-4.3.6.RELEASE.jar
│ │ ├── spring-aspects-4.3.6.RELEASE.jar
│ │ ├── spring-beans-4.3.6.RELEASE.jar
│ │ ├── spring-context-4.3.6.RELEASE.jar
│ │ ├── spring-context-support-4.3.6.RELEASE.jar
│ │ ├── spring-core-4.3.6.RELEASE.jar
│ │ ├── spring-expression-4.3.6.RELEASE.jar
│ │ ├── spring-jdbc-4.3.6.RELEASE.jar
│ │ ├── spring-orm-4.3.6.RELEASE.jar
│ │ ├── spring-tx-4.3.6.RELEASE.jar
│ │ ├── spring-web-4.3.6.RELEASE.jar
│ │ └── spring-webmvc-4.3.6.RELEASE.jar
│ ├── springmvc-servlet.xml
│ └── web.xml
└── rpc-1.0-SNAPSHOT.war
455 directories, 398 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论