zoukankan      html  css  js  c++  java
  • GRPC使用篇

    /**
     *@作者     caosq
     *@创建日期 2020/11/2 15:07
     *@说明     GRPC 的请求客户端
     */
    object GrpcClient {
    
        val inetSocketAddress by lazy {
            InetSocketAddress(BuildConfig.grpcDomain, BuildConfig.grpcPort)
        }
    
        // https://grpc.io/docs/platforms/android/java/basics/
        val serviceGrpc by lazy {
            // 同步请求
    //        CenterServiceGrpc.newBlockingStub(GrpcClient.grpcBuilder)
            // 异步请求
            val asyncStub = CenterServiceGrpc.newStub(grpcBuilder)
            asyncStub
        }
    
        // 使用的新线程 用来避开  StrictMode: StrictMode policy violation: android.os.strictmode.NetworkViolation
        val grpcThead by lazy {
            newSingleThreadContext("grpcThread")
        }
    
        // https://grpc.io/docs/platforms/android/java/basics/
        //    https://stackoverflow.com/questions/63226377/grpc-okhttp-android-client-channel-with-self-signed-ssl-certificate
        // https://developer.android.google.cn/guide/topics/connectivity/grpc
        private val grpcBuilder by lazy {
    //        AndroidChannelBuilder.forAddress(inetSocketAddress.hostName, inetSocketAddress.port)
            OkHttpChannelBuilder
                .forAddress(inetSocketAddress.hostName, inetSocketAddress.port)
                .keepAliveTime(10, TimeUnit.SECONDS)
                .keepAliveWithoutCalls(true)
    //            .useTransportSecurity()
                .usePlaintext()
                .build()
        }
    }
  • 相关阅读:
    js中删除数组元素的几种方法
    js中的prototype
    分布式服务框架 Zookeeper -- 管理分布式环境中的数据
    angularjs事件传递$on、$emit和$broadcast
    cron表达式
    angularjs中的时间格式化过滤
    angularjs中的$q
    IOS 错误
    Swift 错误
    IOS 控件
  • 原文地址:https://www.cnblogs.com/caosq/p/14212153.html
Copyright © 2011-2022 走看看