• [译]用GoLang实现微服务(一)
    导言 在本文中,我们将了解一些基础的概念,术语。同时将创建我们的第一个微服务,尽管它会非常简陋。 在接下来的文章中,我们会陆续创建以下微服务: consignments (货运) inventory (仓库) users (用户) authentication (认证) roles (角色) vessels (货船) 完整的技术栈如下:golang, mongodb, grpc, docker, Google Cloud, Kubernetes, NATS, CircleCI, Terrafrom ...
  • 晁岳攀---基于go的 rpc框架实践
    晁岳攀:软件开发的老兵,Scala集合技术手册(简/繁版)的作者, 高性能的服务治理rpcx (Go)框架的开发者,先前在同方、Motorola、comcast从事软件开发工作,现在在微博平台研发部做基础平台的研发工作。经常在网上和个人网站(http://colobu.com)发表一些技术文章。前言 大家好,我是来自微博研发中心的平台架构组的晁岳攀,我这次给...
  • golang微服务开发与治理
    张晓明 :深知科技曾就职于中科院计算所,阿里巴巴,闪电购等企业,目前就职于深知科技,担任技术架构师职务。从事过c/c++.java,golang开发,目前专心golan前言今天的演讲主题是:golang 微服务架构与治理实战。次微服务架构目前已经成为主流的互联网技术架构方案,深知科技在创业初始阶段就采用了微服务架构来开发和部署线上服务,经过一年多的实战演变,...
  • 程序员如何用gRPC谈一场恋爱
    导语: 本文以幽默诙谐的方式,介绍gRPC的4种client-server服务模式的开发实践及应用场景前言:为什么要写这篇文章?The best way to learn is to teach. gRPC的examples里的例子是一个简易的router,琐碎的业务代码很多,看起来比较绕。于是就自己写一个例子,看看自己是否都将这些知识点掌握了。谈恋爱的过程,其实跟client-server服务模式非常像。单独讲这4种模式有些无聊,所以就尝试用一种尽量有趣的方式去介绍,顺便也可以作为某些男生的一份简单的恋爱...
  • 漫谈gRPC
    本文概括性的介绍gRPC,包括gRPC的起源,核心特性,生态体系,以及一些知名开源软件对gRPC的使用,最后总结gRPC与netty、dubbo等框架的区别,目的是让读者从整体上对gRPC有一个相对全面的认知。1 gRPC起源十多年来,Google一直在使用一个名为Stubby的通用RPC基础架构来连接在数据中心内部和跨越数据中心运行的大量微服务,其内部系统长期以来一直接受微服务架构的普及。拥有统一的跨平台RPC基础架构,可以在整个系统范围内推广效率,安全性,可靠性和行为分析,这对于支持Google的惊人增...
  • 技术分享:浅谈Service Mesh在瓜子的实践
    作者 | zeyaries过去三年,微服务成为业界的技术热点,大量互联网公司都在做微服务架构落地,新一代微服务开发技术悄然兴起,Service Mesh 便是其中之一,该技术起初由 Linkerd 的 CEO William 提出,其中文翻译为服务网格,功能在于处理服务间通信,负责实现请求的可靠传递。本文,瓜子效能团队分享了在 K8S 的基础上,通过 Sidecar 模式进行 Service Mesh 的实践经历。一、背景  起初,瓜子内部各业务线团队为了方便、快速地开发后端服务,使用了各种传统后端开发框...
  • .NET Core 3.0预览版7中的ASP.NET Core和Blazor更新
    .NET Core 3.0 Preview 7现已推出,它包含一系列ASP.NET Core和Blazor的新更新。以下是此预览中的新功能列表:最新的Visual Studio预览包括.NET Core 3.0作为默认运行时Visual Studio中的顶级ASP.NET核心模板简化的网页模板组件的属性splattingTypeConverters和泛型的数据绑定支持阐明了哪些指令属性需要HTML vs C#EventCountersgRPC模板中的HTTPSgRPC客户端改进gRPC Metapackag...
  • 花椒服务端 gRPC 开发实践
    奇技指南gRPC是一个高性能、通用的开源 RPC 框架,由 Google 开发并基于 HTTP/2 协议标准而设计。本文介绍花椒服务端的 gRPC 开发实践。为了让客户端更专注业务实现,降低接口联调测试成本,我们选用了 gRPC 方案。在服务端,服务实现这个接口并且运行 gRPC 服务处理客户端调用。gRPC特点基于标准化的 IDL来生成服务器端和客户端代码,支持多种主流开发语言。因此在这次项目中前端未使用 gRPC 服务,而是由 gRPC-Gateway 提供代理的 RESTful 接口。gRPC-Gatewaygrpc-gateway 是 protoc 的一个插件,它能读取 gRPC 的服务定义并生成反向代理服务器,将 RESTful 的 JSON 请求转换为 gRPC 的方式。
  • 实践gRPC之GoLang入门HelloWord
    这篇文章里我们要实现一个基于GoLang编程语言的gRPC的客户端与服务端通信的HelloWorld案例编写hello_world.proto文件,如下代码:syntax proto3package proto//接口请求入参message HelloRequest{ string request = 1;}//接口返回出参message HelloResponse{ string response = 1;}//定义接口service HelloService{ //一个简单的rpc
  • gRPC之流式调用原理http2协议分析
    HTTP/1协议回顾HTTP超文本传输协议HTTP协议在7层传输架构中属于应用层协议,其依赖TCP协议HTTP协议由请求和响应两部分组成,是一个标准的客户端服务器模型HTTP默认端口号80,https默认端口号443HTTP协议通过URL来定位互联网上的资源地址HTTP是一个无状态的面向连接的协议,无状态不代表HTTP不能保持长连接,无状态指的是HTTP不具备事务记忆能力,也就是下一次的请求不会记住上一次的请求信息。HTTP的请求和响应分别都有请求行/响应行,首部,实体组成的,如下图HTTP2协议分析什么是HTTP2HTTP / 2并不是对HTTP协议的重写,相对于HTTP / 1,HTTP / 2的侧重点主要在性能。
  • 微博微服务架构的Service Mesh实践之路
    而国内在这一方面也不遑多让,秉承了Service Mesh的思想也走出了各自的实践之路,并且已经开始在线上的核心业务中大规模使用,比如微博的Weibo Mesh、华为公有云Service Mesh以及蚂蚁金服的SOFA Mesh等。今天我就来带给大家详细介绍下微博的微服务架构是如何一步步走向Service Mesh之路的。06向Service Mesh迈进_____2017年,就在我们开始采用Agent方案对业务进行改造,以支持PHP应用调用Java应用服务化的时候,Service Mesh的概念突然火热起来,并随着Istio的发布风靡业界。没错,我们跨语言调用的解决方案竟然与Service Mesh的理念不谋而合。
  • gRPC注册中心,常用的注册中心你懂了吗?AP还是CP
    gRPC是一个跨语言的微服务框架,但gRPC本身不支持微服务框架生态圈的一些功能,比如注册中心,限流,熔断等,今天我们就看看如何利用gRPC提供的接口实现简单的注册中心,文章将介绍什么是注册中心、注册中心方案,常用的注册中心实现方式,优劣,以及为gRPC-go实现一个注册中心。这是注册中心还有一个作用负载均衡,注册中心会根据某种算法选择一个合适服务提供者供消费者使用,那万一这个服务提供者死亡了呢?
  • gRPC认证的多种方式实践(排版整理)
    总结gRPC将各种认证方式浓缩统一到一个凭证上,可以单独使用一种凭证,比如只使用TLS凭证或者只使用自定义凭证,也可以多种凭证组合,gRPC提供统一的API验证机制,使研发人员使用方便,这也是gRPC设计的巧妙之处思考真的需要在每一个服务实现处做认证吗?能不能通过拦截器来做?gRPC拦截器你会了吗?
  • .NET Core Love gRPC
    自2018年11月以来,Microsoft的.NET团队一直与gRPC团队密切合作,共同开发适用于.NET Core的gRPC的全新完全托管实现。.NET目前有两种正式的gRPC实现:Grpc.Core:基于本地gRpc Core库的原生 gRpc C#实现,支持.NET Core 2.1/.NET Framework 4.5+/Mono 4+ 。grpc-dotnet:完全以C#编写的新实现,没有任何本机依赖性,并且基于最新发布的.NET Core 3.0。在服务器端,Grpc.AspNetCore.Server软件包集成到ASP.NET Core中,使开发人员受益于ASP.NET Core已解决的日志,配置,依赖项注入,身份验证,授权等常见的交叉问题。现在,ASP.NET生态系统中的流行库与gRPC无缝协作。protobuf-net.Grpc使用本机Grpc.CoreAPI或完全托管的Grpc.Net.Client/Grpc.AspNetCore.ServerAPI 在gRPC上添加对服务的代码优先支持。
  • 如何在 Knative 中部署 WebSocket 和 gRPC 服务?
    本文分别给出了一个 WebSocket 和 gRPC 的例子,当需要在生产或者测试环境部署相关服务时,可以使用本文给出的示例进行 Knative 服务的测试。WebSocket如果自己手动的配置 Istio Gateway 支持 WebSocket 就需要开启 websocketUpgrade 功能。但使用 Knative Serving 部署其实就自带了这个能力。本示例的完整代码放在 https://github.com/knative-sample/websocket-chat ,这是一个基于 WebSocket 实现的群聊的例子。打开两个窗口,在其中一个窗口发送一条消息,另外一个窗口通过 WebSocket 也收到了这条消息。
活跃用户
一个专注侃侃计算机视觉方向的公众号。计算机视觉、图像处理、机器学习、深度学习、C/C++、Python、诗和远方等。
分享项目实践,洞察前沿架构,聚焦云计算、微服务、大数据、超融合、软件定义、数据保护、人工智能、行业实践和解决方案。
开源软件,改变世界!专注于分享各类效率工具,加入我们,和10万人一起探宝寻器!
专注于分享互联网技术文章。笔者待过BAT等一线互联网公司,文笔流畅,酷爱写作与编码,期待你的关注!
每天分享 Java技术栈 干货,路虽远,行则必至。