 基于amqp实现的golang消息队列MaxQ7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 1/22 基于amqp实现的golang消息队列 MaxQ 2017-07-01 张培培 饿了么-基础框架组 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 slide#1 2/22 内容 1. 队列 2. IPC消息队列 3. AMQP协议 4. MaxQ架构模型 5. MaxQ相关特性 6. 使用场景和案例 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 3/22 1. 队列 跟消息队列相比,有哪些共性? 7/1/2017 基于 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 4/22 生产者消费者 通信方式 存储方式 堆积能力 消息可靠性 生产消费关系 Pull/Push 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 5/22 2. IPC消息队列0 码力 | 22 页 | 1.45 MB | 1 年前3 基于amqp实现的golang消息队列MaxQ7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 1/22 基于amqp实现的golang消息队列 MaxQ 2017-07-01 张培培 饿了么-基础框架组 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 slide#1 2/22 内容 1. 队列 2. IPC消息队列 3. AMQP协议 4. MaxQ架构模型 5. MaxQ相关特性 6. 使用场景和案例 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 3/22 1. 队列 跟消息队列相比,有哪些共性? 7/1/2017 基于 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 4/22 生产者消费者 通信方式 存储方式 堆积能力 消息可靠性 生产消费关系 Pull/Push 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 5/22 2. IPC消息队列0 码力 | 22 页 | 1.45 MB | 1 年前3
 基于gRPC go实现消息发布订阅使用gRPC go实现 基于Topic的高效消息订阅发布模型 姓名 张凯 中国电子云 目 录 gRPC go 介绍 01 gRPC四种通信模式及落地场景 02 根据proto生成go桩代码 03 订阅者动态注册 04 发布者消息推送 05 现场案例演示 06 gRPC go介绍 gRPC是什么? 01. 副标题 开篇思考几个问题 01. 副标题 gRPC介绍 Web开发 基于通信模式如何落地? 01. 副标题 流式传输 基于通信模式如何落地? 01. 副标题 以及,本次分享的 “ ” 基于Topic消息发布订阅 基于Topic的消息发布模型简介 01. 副标题 基于Topic的消息发布模型简介 01. 副标题 BRIAN KERNGHAN service PubSubService { rpc Publish(PublishRequest) 服务器和客户端的接口代码。  --go_out=.: 类似地,这个选项指定了非 gRPC 相关的 Protocol Buffers 消息结构体等 Go 语言代码的输出目录, 同样为当前目录。protoc-gen-go 插件会处理 .proto 文 件中的消息定义并生成对应的 Go 结构体。 订阅者动态注册 01. 副标题 type subscriber chan interface{}0 码力 | 31 页 | 2.42 MB | 1 年前3 基于gRPC go实现消息发布订阅使用gRPC go实现 基于Topic的高效消息订阅发布模型 姓名 张凯 中国电子云 目 录 gRPC go 介绍 01 gRPC四种通信模式及落地场景 02 根据proto生成go桩代码 03 订阅者动态注册 04 发布者消息推送 05 现场案例演示 06 gRPC go介绍 gRPC是什么? 01. 副标题 开篇思考几个问题 01. 副标题 gRPC介绍 Web开发 基于通信模式如何落地? 01. 副标题 流式传输 基于通信模式如何落地? 01. 副标题 以及,本次分享的 “ ” 基于Topic消息发布订阅 基于Topic的消息发布模型简介 01. 副标题 基于Topic的消息发布模型简介 01. 副标题 BRIAN KERNGHAN service PubSubService { rpc Publish(PublishRequest) 服务器和客户端的接口代码。  --go_out=.: 类似地,这个选项指定了非 gRPC 相关的 Protocol Buffers 消息结构体等 Go 语言代码的输出目录, 同样为当前目录。protoc-gen-go 插件会处理 .proto 文 件中的消息定义并生成对应的 Go 结构体。 订阅者动态注册 01. 副标题 type subscriber chan interface{}0 码力 | 31 页 | 2.42 MB | 1 年前3
 电商消息系统架构演进&mdash0 码力 | 22 页 | 12.22 MB | 1 年前3 电商消息系统架构演进&mdash0 码力 | 22 页 | 12.22 MB | 1 年前3
 MoonBit月兔编程语言 现代编程思想 第八课 队列:可变数据实现现代编程思想 队列:可变数据结构实现 Hongbo Zhang 1 队列 我们曾经介绍过队列这个数据结构 先进先出 利⽤两个堆栈进⾏实现 我们利⽤可变数据结构进⾏实现 基于数组的循环队列 单向链表 2 队列 我们实现以下函数(以整数队列为例) 1. struct Queue { .. } 2. 3. fn make() -> Queue // 创建空列表 4. fn push(self: self ,为了⽅便起⻅,我们将本身作为返回值传回 1. make().push(1).push(2).push(3).pop().pop().length() // 1 3 循环队列 我们可以利⽤⼀个数组来代表队列 数组是⼀个连续的存储空间,每⼀个字段均可被修改 数组被分配后⻓度不变 1. let a: Array[Int] = Array::make(5, 0) 2. a[0] = 1 移⼀位 如果超出数组⻓度,则绕回开头 4 循环队列 0 0 0 0 0 Start End push(1) 0 0 0 0 Start End make() 1 push(2) 0 0 0 Start End 1 2 pop() 0 0 0 Start End 0 2 0 1 2 3 5 循环队列 0 0 0 0 Start End push(6)0 码力 | 19 页 | 314.79 KB | 1 年前3 MoonBit月兔编程语言 现代编程思想 第八课 队列:可变数据实现现代编程思想 队列:可变数据结构实现 Hongbo Zhang 1 队列 我们曾经介绍过队列这个数据结构 先进先出 利⽤两个堆栈进⾏实现 我们利⽤可变数据结构进⾏实现 基于数组的循环队列 单向链表 2 队列 我们实现以下函数(以整数队列为例) 1. struct Queue { .. } 2. 3. fn make() -> Queue // 创建空列表 4. fn push(self: self ,为了⽅便起⻅,我们将本身作为返回值传回 1. make().push(1).push(2).push(3).pop().pop().length() // 1 3 循环队列 我们可以利⽤⼀个数组来代表队列 数组是⼀个连续的存储空间,每⼀个字段均可被修改 数组被分配后⻓度不变 1. let a: Array[Int] = Array::make(5, 0) 2. a[0] = 1 移⼀位 如果超出数组⻓度,则绕回开头 4 循环队列 0 0 0 0 0 Start End push(1) 0 0 0 0 Start End make() 1 push(2) 0 0 0 Start End 1 2 pop() 0 0 0 Start End 0 2 0 1 2 3 5 循环队列 0 0 0 0 Start End push(6)0 码力 | 19 页 | 314.79 KB | 1 年前3
 Laravel 5.6 中文文档Laravel 5.6 带来了日志系统的重大升级,所有日志配置都存放在新的 config/logging.php 配置文件,你现在可以轻松构建发送日志消息到多个处 理器的日志”堆栈”。例如,你可以发送所有 debug 级别消息到系统日志同时发送 error 级别消息到 Slack 以便团队成员可以快速响应: 'channels' => [ 'stack' => [ 'driver' make:controller API/PhotoController --api 模型序列化优化 在之前版本的 Laravel 中,队列中的模型在反序列化后不会带有完整的已加载关联关系。在 Laravel 5.6 中,模型上已加载的关联关系在队列任务被 处理时会自动进行重新加载。 本文档由 Laravel 学院提供 Laravel 学院致力于提供优质 Laravel 中 withSwiftMessage 回调 在之前版本的 Laravel 中,使用 withSwiftMessage 注册的 Swift 消息自定义回调函数在内容已经被编码并添加到消息后被调用。这些回调现在在 内容被添加前调用,从而允许你自定义编码以及其他消息选项。 分页 Bootstrap 4 分页器生成的分页链接现在默认使用 Bootstrap 4,要让分页器生成 Bootstrap0 码力 | 377 页 | 14.56 MB | 1 年前3 Laravel 5.6 中文文档Laravel 5.6 带来了日志系统的重大升级,所有日志配置都存放在新的 config/logging.php 配置文件,你现在可以轻松构建发送日志消息到多个处 理器的日志”堆栈”。例如,你可以发送所有 debug 级别消息到系统日志同时发送 error 级别消息到 Slack 以便团队成员可以快速响应: 'channels' => [ 'stack' => [ 'driver' make:controller API/PhotoController --api 模型序列化优化 在之前版本的 Laravel 中,队列中的模型在反序列化后不会带有完整的已加载关联关系。在 Laravel 5.6 中,模型上已加载的关联关系在队列任务被 处理时会自动进行重新加载。 本文档由 Laravel 学院提供 Laravel 学院致力于提供优质 Laravel 中 withSwiftMessage 回调 在之前版本的 Laravel 中,使用 withSwiftMessage 注册的 Swift 消息自定义回调函数在内容已经被编码并添加到消息后被调用。这些回调现在在 内容被添加前调用,从而允许你自定义编码以及其他消息选项。 分页 Bootstrap 4 分页器生成的分页链接现在默认使用 Bootstrap 4,要让分页器生成 Bootstrap0 码力 | 377 页 | 14.56 MB | 1 年前3
 Laravel 6.0 中文文档提供了对 Laravel Vapor 的兼容,这是一个针对 Laravel 应用的自动扩容无服务器部署平台。Vapor 对在 AWS Lambda 上 管理 Laravel 应用以及与 SQS 队列、数据库、Redis 集群、网络、 CloudFront CDN 进行交互的复杂性进行了抽象。 通过 Ignition 优化异常 本文档由学院君提供 学院君致力于提供优质 Laravel 中 编辑、异常分享、以及经过优化的用户体验。 优化授权响应 在之前版本的 Laravel 中,获取并提供自定义授权消息给终端用户 很困难,主要难点在于如何向终端用户解释清楚为什么特定的请求被 拒绝了。在 Laravel 6.0 中,我们可以使用 Gate::inspect 方法和 授权响应消息来轻松实现。例如,给定如下策略方法: /** * 判断用户是否可以查看指定的航班. * * @param Laravel 中文学习资源:https://xueyuanjun.com 4 接下来我们可以通过 Gate::inspect 方法获取授权策略的响应,然 后再通过响应示例的 message() 方法获取授权消息: $response = Gate::inspect('view', $flight); if ($response->allowed()) { // 用户被授权可以访问航班... } if0 码力 | 1442 页 | 14.66 MB | 1 年前3 Laravel 6.0 中文文档提供了对 Laravel Vapor 的兼容,这是一个针对 Laravel 应用的自动扩容无服务器部署平台。Vapor 对在 AWS Lambda 上 管理 Laravel 应用以及与 SQS 队列、数据库、Redis 集群、网络、 CloudFront CDN 进行交互的复杂性进行了抽象。 通过 Ignition 优化异常 本文档由学院君提供 学院君致力于提供优质 Laravel 中 编辑、异常分享、以及经过优化的用户体验。 优化授权响应 在之前版本的 Laravel 中,获取并提供自定义授权消息给终端用户 很困难,主要难点在于如何向终端用户解释清楚为什么特定的请求被 拒绝了。在 Laravel 6.0 中,我们可以使用 Gate::inspect 方法和 授权响应消息来轻松实现。例如,给定如下策略方法: /** * 判断用户是否可以查看指定的航班. * * @param Laravel 中文学习资源:https://xueyuanjun.com 4 接下来我们可以通过 Gate::inspect 方法获取授权策略的响应,然 后再通过响应示例的 message() 方法获取授权消息: $response = Gate::inspect('view', $flight); if ($response->allowed()) { // 用户被授权可以访问航班... } if0 码力 | 1442 页 | 14.66 MB | 1 年前3
 Laravel 5.3 中文文档......................................................................................... 360 9.7 队列 .................................................................................................. 将其发送给用户。可邮寄对象可以在 浏览代码的同时了解邮件信息: Mail::to($user)->send(new WelcomeMessage); 当然,你还可以标记可邮寄对象为“队列化”,这样这封邮件就会在后台通过队列任务发送: class WelcomeMessage extends Mailable implements ShouldQueue { // } 阅读完整的分页文档了解更多实现细节。 队列 配置 在队列配置中,所有配置项 expire 需要重命名为 retry_after,类似的,Beanstalk 配置的配置 项 ttr 也需要重命名为 retry_after。这一命名更改让配置项的意义更加明确。 闭包 队列闭包不再支持,如果你在应用中将闭包添加到队列,需要将闭包转化为一个类,然后将类实 例添加到队列。 集合序列化 Il0 码力 | 691 页 | 9.37 MB | 1 年前3 Laravel 5.3 中文文档......................................................................................... 360 9.7 队列 .................................................................................................. 将其发送给用户。可邮寄对象可以在 浏览代码的同时了解邮件信息: Mail::to($user)->send(new WelcomeMessage); 当然,你还可以标记可邮寄对象为“队列化”,这样这封邮件就会在后台通过队列任务发送: class WelcomeMessage extends Mailable implements ShouldQueue { // } 阅读完整的分页文档了解更多实现细节。 队列 配置 在队列配置中,所有配置项 expire 需要重命名为 retry_after,类似的,Beanstalk 配置的配置 项 ttr 也需要重命名为 retry_after。这一命名更改让配置项的意义更加明确。 闭包 队列闭包不再支持,如果你在应用中将闭包添加到队列,需要将闭包转化为一个类,然后将类实 例添加到队列。 集合序列化 Il0 码力 | 691 页 | 9.37 MB | 1 年前3
 Laravel 5.1 中文文档学院(LaravelAcademy.org)提供 2 事件广播 在很多现代的 web 应用中,web 套接字被用于实现实时的,即时更新的用户接口,当服务 器上的某些数据更新后,通常一条消息将会通过 websocket 连接发送到客户端并进行处理。 为了帮助你构建这样类型的应用,Laravel 使得通过 websocket 连接广播事件变得简单可行。 广播 Laravel 事件允许你在服务端代码和客户端 oo.php。 本文档由 Laravel 学院(LaravelAcademy.org)提供 7 Amazon Web Services SDK 如果你正在使用 AWS SQS 队列驱动或者 AWS SES 电子邮件驱动,需要升级 AWS PHP SDK 到 3.0 版本。 如果你正在使用 Amazon S3 文件系统驱动,需要通过 Composer 升级相应的文件系统包: Illuminate\Contracts\Queue\ShouldBeQueued 被废弃,使 用 Illuminate\Contracts\Queue\ShouldQueue  Iron.io “推入队列” 被废弃, 使用 Iron.io 队列和队列监听器.  Illuminate\Foundation\Bus\DispatchesCommands trait 被废弃并被重命名为 Illuminate\Found0 码力 | 307 页 | 3.46 MB | 1 年前3 Laravel 5.1 中文文档学院(LaravelAcademy.org)提供 2 事件广播 在很多现代的 web 应用中,web 套接字被用于实现实时的,即时更新的用户接口,当服务 器上的某些数据更新后,通常一条消息将会通过 websocket 连接发送到客户端并进行处理。 为了帮助你构建这样类型的应用,Laravel 使得通过 websocket 连接广播事件变得简单可行。 广播 Laravel 事件允许你在服务端代码和客户端 oo.php。 本文档由 Laravel 学院(LaravelAcademy.org)提供 7 Amazon Web Services SDK 如果你正在使用 AWS SQS 队列驱动或者 AWS SES 电子邮件驱动,需要升级 AWS PHP SDK 到 3.0 版本。 如果你正在使用 Amazon S3 文件系统驱动,需要通过 Composer 升级相应的文件系统包: Illuminate\Contracts\Queue\ShouldBeQueued 被废弃,使 用 Illuminate\Contracts\Queue\ShouldQueue  Iron.io “推入队列” 被废弃, 使用 Iron.io 队列和队列监听器.  Illuminate\Foundation\Bus\DispatchesCommands trait 被废弃并被重命名为 Illuminate\Found0 码力 | 307 页 | 3.46 MB | 1 年前3
 Laravel 5.2 中文文档的标识符试图从数据库获取一个已存在的模型实例。 IronMQ IronMQ 队列驱动被移动到自己的扩展包中,不再被框架核心支持: http://github.com/LaravelCollective/iron-queue 任务/队列 php artisan make:job 命令现在默认会创建一个队列任务类,如果你想要创建一个同步任 务(非队列),在使用该命令时加上 --sync 选项。 邮件 邮件配置中移除了 php artisan up 维护模式响应模板 默认的维护模式响应模板是 resources/views/errors/503.blade.php 维护模式 & 队列 当你的站点处于维护模式中时,所有的队列任务都不会执行;当应用退出维护模式这些任 务才会被继续正常处理。 本文档由 Laravel 学院(LaravelAcademy.org)提供 Laravel 学院致力于提供优质 $method=$request->method(); if($request->isMethod('post')){ // } PSR-7 请求 PSR-7 标准指定了 HTTP 消息接口,包括请求和响应。如果你想要获取 PSR-7 请求实 例,首先需要安装一些库,Laravel 使用 Symfony HTTP Message Bridge 组件将典型的 Laravel 请求和响应转化为0 码力 | 377 页 | 4.56 MB | 1 年前3 Laravel 5.2 中文文档的标识符试图从数据库获取一个已存在的模型实例。 IronMQ IronMQ 队列驱动被移动到自己的扩展包中,不再被框架核心支持: http://github.com/LaravelCollective/iron-queue 任务/队列 php artisan make:job 命令现在默认会创建一个队列任务类,如果你想要创建一个同步任 务(非队列),在使用该命令时加上 --sync 选项。 邮件 邮件配置中移除了 php artisan up 维护模式响应模板 默认的维护模式响应模板是 resources/views/errors/503.blade.php 维护模式 & 队列 当你的站点处于维护模式中时,所有的队列任务都不会执行;当应用退出维护模式这些任 务才会被继续正常处理。 本文档由 Laravel 学院(LaravelAcademy.org)提供 Laravel 学院致力于提供优质 $method=$request->method(); if($request->isMethod('post')){ // } PSR-7 请求 PSR-7 标准指定了 HTTP 消息接口,包括请求和响应。如果你想要获取 PSR-7 请求实 例,首先需要安装一些库,Laravel 使用 Symfony HTTP Message Bridge 组件将典型的 Laravel 请求和响应转化为0 码力 | 377 页 | 4.56 MB | 1 年前3
 Python 标准库参考指南 3.7.13 collections.abc --- 容器的抽象基类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 8.5 heapq --- 堆队列算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 8.6 bisect --- . . . . . . 466 15 加密服务 469 15.1 hashlib --- 安全哈希与消息摘要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469 15.2 hmac --- 基于密钥的消息验证 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 740 17.7 queue --- 一个同步的队列类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 742 17.8 _thread --- 底层多线程0 码力 | 1846 页 | 9.09 MB | 9 月前3 Python 标准库参考指南 3.7.13 collections.abc --- 容器的抽象基类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 8.5 heapq --- 堆队列算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 8.6 bisect --- . . . . . . 466 15 加密服务 469 15.1 hashlib --- 安全哈希与消息摘要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469 15.2 hmac --- 基于密钥的消息验证 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 740 17.7 queue --- 一个同步的队列类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 742 17.8 _thread --- 底层多线程0 码力 | 1846 页 | 9.09 MB | 9 月前3
共 388 条
- 1
- 2
- 3
- 4
- 5
- 6
- 39














 
  
 