《RabbitMQ官方指南》RPC

远程过程调用

(RPC)

(Java 客户端版)

在第二章(工作队列  Work Queues)中,我们学习了如何使用工作队列在多用户之间分配耗时的任务。

但是如果我们需要在远程电脑上运行一个函数方法,并且还要等待一个返回结果该怎么办?好吧,这将会是一个不一样的故事。这种模式通常被我们称为远程过程调用或者RPC.

在本章教程中,我们将会学习使用RabbitMQ去搭建一个RPC系统:一个客户端和一个可以升级(扩展)的RPC服务器。由于我们没有任何的值得分配的耗时的任务,所以我们将创建一个返回斐波那契数列的虚拟的RPC服务。

阅读全文

《Nginx官方文档》用DTrace pid提供程序调试nginx

用DTrace pid提供程序调试nginx

本文假设读者对nginx内部和 DTrace 有一般的了解。

虽然使用 –with-debug 选项构建的nginx 已经提供了大量关于请求处理的信息,但是有时候更有必要更详细地跟踪代码路径的特定部分,同时省略其余的调试输出。DTrace pid提供程序(在Solaris,MacOS上可用)是浏览用户程序内部的有用工具,因为它不需要任何代码更改,并且可以帮助您完成任务。跟踪和打印nginx函数调用的简单DTrace脚本可能如下所示:

阅读全文

《Nginx官方文档》转换重写规则

转换重写规则

转换Mongrel规则

重定向到主站点

在他们共享的宿主生活中,人们仅仅使用Apache的.htaccess文件来配置一切,通常会翻译下列规则:

阅读全文

《Nginx官方文档》WebSocket代理 

WebSocket代理

要将客户机和服务器之间的连接从HTTP / 1.1转换为WebSocket,要使用HTTP / 1.1中可用的 协议切换 机制。

然而,有一个微妙的地方:由于“升级”是一个 逐跳 标题,它不会从客户端传递到代理的服务器。使用转发代理,客户端可以使用该CONNECT 方法来规避此问题。然而,这不适用于反向代理,因为客户端不知道任何代理服务器,并且需要在代理服务器上进行特殊处理。

阅读全文

《RabbitMQ官方指南》翻译邀请

10月姗姗来迟,本月并发网组织大家翻译《RabbitMQ官方文档》,欢迎有兴趣的同学参与。 阅读全文

JAVA8 stream 中Spliterator的使用(二)

JAVA8 stream 中Spliterator的使用(一)给出了Spliterator的两种使用,但是遗憾的是,代码并不正确。这篇说明下原因,并对Spliterator进行更深入的分析。

阅读全文

JAVA8 stream 中Spliterator的使用(一)

java8 stream大家用的比较多,但是发现,其实stream的底层构造函数中,还需要传入Spliterator。查了一下,竟然发现网上对这个类讲的几乎没有。唯一一篇文章写得Spliterator使用有问题的,其实他的并行流是没有用到的。因为

[code lang=”text”]
for (int pos = currentSize/2 + currentSize; pos < str.length(); pos++){
…..
[/code]

阅读全文

Spring Boot 整合 Thymeleaf 完整 Web 案例

原创出处  作者:泥瓦匠BYSocket 希望转载,保留摘要,谢谢!

Thymeleaf 是一种模板语言。那模板语言或模板引擎是什么?常见的模板语言都包含以下几个概念:数据(Data)、模板(Template)、模板引擎(Template Engine)和结果文档(Result Documents)。

  • 数据 数据是信息的表现形式和载体,可以是符号、文字、数字、语音、图像、视频等。数据和信息是不可分离的,数据是信息的表达,信息是数据的内涵。数据本身没有意义,数据只有对实体行为产生影响时才成为信息。
  • 模板 模板,是一个蓝图,即一个与类型无关的类。编译器在使用模板时,会根据模板实参对模板进行实例化,得到一个与类型相关的类。
  • 模板引擎 模板引擎(这里特指用于Web开发的模板引擎)是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的HTML文档。
  • 结果文档 一种特定格式的文档,比如用于网站的模板引擎就会生成一个标准的HTML文档。

阅读全文

实战Spring事务传播性与隔离性

一、事务传播性

1.1 什么是事务的传播性

事务的传播性一般在事务嵌套时候使用,比如在事务A里面调用了另外一个使用事务的方法,那么这俩个事务是各自作为独立的事务执行提交,还是内层的事务合并到外层的事务一块提交那,这就是事务传播性要确定的问题。下面一一介绍比较常用的事务传播性。

阅读全文

nginx如何处理TCP / UDP会话

nginx如何处理TCP / UDP会话

来自客户端的TCP / UDP会话在称为阶段的连续步骤中处理:

阅读全文

《Nginx官方文档》配置HTTPS服务器

配置HTTPS服务器

要配置HTTPS服务器,ssl必须在 服务器 块中的 监听套接字 上启用该参数 ,并且应指定 服务器证书私钥 文件的位置 :

server {
    listen              443 ssl;
    server_name         www.example.com;
    ssl_certificate     www.example.com.crt;
    ssl_certificate_key www.example.com.key;
    ssl_protocols       TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers         HIGH:!aNULL:!MD5;
    ...
}

阅读全文

《TensorFlow官方文档》快速入门

原文链接

本指南指引你在TensorFlow上面编程。在使用本指南前,先安装TensorFlow。为了最有效使用该指南,你需要先了解一下内容:

  • 怎样用Python来编程。
  • 至少对数组有一点了解。
  • 最好对机器学习有一些了解。但是如果你只是了解一点点甚至还没有了解过机器学习,这依然是你第一篇需要阅读的指南。

TensoFlow提供了多样API。 最低级别API –TensorFlow Core– 提供给你完整的编程控制。我们推荐机器学习研究者和其他需要对模型进行良好控制的人使用TensorFlow Core。较高级别的API构建在TensorFlow Core之上。这些更高级的API通常比TensorFlow Core更容易学习和使用。另外,较高级别的API使重复任务更容易,并且在不同用户之间更一致。像tf.estimator这样的高级API可以帮助你管理数据集,估计器,训练和推理。

本指南从TensorFlow Core教程开始。然后我们将演示如何在tf.estimator中实现相同的模型。了解TensorFlow Core原理,在你使用高级API时理解它们的内部工作会很有帮助。

阅读全文

《Nginx官方文档》Nginx之Server names

服务器名称

服务器名称使用 server_name 指令定义, 并确定哪个服务器块用于给定的请求。另请参见“ nginx如何处理请求 ”。可以使用精确名称,通配符名称或正则表达式来定义它们:

阅读全文

Spring事务配置解惑

一、项目中spring+mybaits xml配置解析

一般我们会在datasource.xml中进行如下配置,但是其中每个配置项原理和用途是什么,并不是那么清楚,如果不清楚的话,在使用时候就很有可能会遇到坑,所以下面对这些配置项进行一一解说

阅读全文

《Spring 5 官方文档》39. 创建可扩展的XML

原文链接 译者: flystarfly

39. 创作可扩展的XML

39.1 介绍

从2.0版开始,Spring提供了一种基于模式的扩展机制用于定义和配置beans的Spring XML基本格式。本节将尽力详细地说明如何编写自己的自定义XML bean解析器,以及如何将这样的解析器集成到Spring IoC容器中。

阅读全文

return top