关闭
当前搜索:

[置顶] Tomcat内核、集群、参数及性能

主题简介: 内核实现原理 分布式集群 生产部署关键参数 性能监控和分析 一、内核实现原理 HTTP Web服务器与浏览器之间以HTTP协议通信,浏览器要访问服务器即向服务器发送HTTP请求报文。 如图,此处用get方法访问了localhost的8080端口的Web、Index、JSP,服务器返回200状态码并将一些HTTP报文返回到客户端。 HTTP报文 从图中可以看到...
阅读(174) 评论(0)

[置顶] 我的2017年文章汇总——自然语言处理篇

近期准备把过去一年写的文章按照分类重新整理推送一遍,包括:“分布式”、“机器学习”、“深度学习”、“NLP”、“Java深度”、“Java并发核心”、“JDK源码”、“Tomcat内核”。 本篇推送nlp相关文章。 基于典型相关分析的词向量 来自麻省理工的信息抽取 如何用机器学习对文本分类 循环神经网络 如何使用中文维基百科语料 深度学习的Attention模型 TensorFlo...
阅读(413) 评论(0)

[置顶] 我的2017年文章汇总——JDK源码篇

2018已经开始,可能还有360天结束。 Eventually a single thing can only get so big. You need to do something else. 近期准备把过去一年写的文章按照分类重新整理推送一遍,包括:“分布式”、“机器学习”、“深度学习”、“NLP”、“Java深度”、“Java并发核心”、“JDK源码”、“Tomcat内核”。 本篇推...
阅读(884) 评论(0)

[置顶] 我的2017年文章汇总——机器学习篇

2018,你跟自己做了约定了吗?为了遇见更好的自己。近期准备把过去一年写的文章按照分类重新整理推送一遍,包括:“分布式”、“机器学习”、“深度学习”、“NLP”、“Java深度”、“Java并发核心”、“JDK源码”、“Tomcat内核”。本篇推送机器学习相关文章。强化学习机器学习之条件随机场(CRF)隐马尔可夫模型的Viterbi解码算法线性回归之最小二乘法k-means聚类算法机器学习之层次聚类...
阅读(1126) 评论(2)

[置顶] 我的2017年文章汇总——Java及中间件篇

2018即将到来,大家看着2017给自己制定的计划有没有感慨?当你觉得过去一年没有什么进步时,那么请行动起来,能开始总是好的。近期准备把过去一年写的文章按照分类重新整理推送一遍,包括:“分布式”、“机器学习”、“深度学习”、“NLP”、“Java深度”、“Java并发核心”、“JDK源码”、“Tomcat内核”。本篇推送Java及中间件相关文章。volatile足以保证数据同步吗JVM层对jar包字...
阅读(1372) 评论(0)

[置顶] 我的2017年文章汇总——深度学习篇

2017快过完了,大家过去一年收获如何?不管怎样,保持好心态,未来不迎,当下不杂,既过不恋。近期准备把过去一年写的文章按照分类重新整理推送一遍,包括:“分布式”、“机器学习”、“深度学习”、“NLP”、“Java深度”、“Java并发核心”、“JDK源码”、“Tomcat内核”。本篇推送深度学习相关文章。LSTM神经网络GRU神经网络循环神经网络卷积神经网络深度学习的seq2seq模型TensorF...
阅读(789) 评论(0)

[置顶] 如何用TensorFlow训练聊天机器人(附github)

前言实际工程中很少有直接用深度学习实现端对端的聊天机器人,但这里我们来看看怎么用深度学习的seq2seq模型来实现一个简易的聊天机器人。这篇文章将尝试使用TensorFlow来训练一个基于seq2seq的聊天机器人,实现根据语料库的训练让机器人回答问题。seq2seq关于seq2seq的机制原理可看之前的文章《深度学习的seq2seq模型》。循环神经网络在seq2seq模型中会使用到循环神经网络,目...
阅读(11786) 评论(13)

[置顶] 谈谈谷歌word2vec的原理

word2vec在NLP领域中,为了能表示人类的语言符号,一般会把这些符号转成一种数学向量形式以方便处理,我们把语言单词嵌入到向量空间中就叫词嵌入(word embedding)。谷歌开源的word2vec则是这么一种词嵌入工具,它能生成词向量,通过词向量可以很好地度量词与词之间的相似性。word2vec采用的模型包含了连续词袋模型(CBOW)和Skip-Gram模型。通过它可以在大数据量上进行高效...
阅读(2845) 评论(0)

[置顶] 开源一个文本分析项目

Githubhttps://github.com/sea-boat/TextAnalyzerTextAnalyzera text analizer that can analyze text. so far, it can extract hot words in a text segment by using tf-idf algorithm,at the same time using a sc...
阅读(1377) 评论(0)

[置顶] 新书预售《Tomcat内核设计剖析》

鄙人的新书《Tomcat内核设计剖析》已经在京东预售了,有需要的朋友可以通过文末的连接进行预定。感谢各位朋友。本书特色? 深入剖析Tomcat的每一个设计要点,使读者知其然,更知其所以然; 拒绝没营养的直接贴代码分析,而是升华到对Tomcat设计思想的剖析; 通篇采用大量插图来辅助文字解释,降低读者的理解门槛; 层次分明,脉络清晰,由浅入深,循序渐进,确保知识讲解的连贯性和普适性。 通过本书能快速建...
阅读(4580) 评论(18)

[置顶] 机器学习的监督学习在研究什么

什么是监督学习简单来说,监督学习是对给定的输入输出样本进行学习并建立一个模型,该模型能对任意输入做出好的输出预测。 监督学习核心思想 所有可能的模型函数的集合称为假设空间,$H=\left \{ f|Y=f(X) \right \}$。 对于所有的模型函数集合,可能不知道是该用用逻辑回归模型、或贝叶斯模型、或神经网络模型还是用支持向量机模型。这个过程通常是一个不断迭代的过程,只有在不断地尝试比较才...
阅读(2366) 评论(0)

[置顶] 分布式系统调用链监控

分布式系统调用链监控 应用架构由集中式向分布式演进后,整个调用关系变得复杂。 分布式架构由复杂且较大规模集群构成,各个应用之间相当独立,可能由不同团队、不同语言实现。 系统一个完整的调用过程可能横跨多个服务及数据中心。 复杂的调用导致系统出问题后难以定位问题。 无法准确知道整体系统性能及运行情况。 全链路性能监控一个请求完整的调用链可能如下图...
阅读(15854) 评论(19)

[置顶] 如何设计一个数据库中间件(支持百亿级别数据存储)

继《如何设计开发一个可用的web容器》之后又一如何系列文章,《如何设计一个数据库中间件》...
阅读(11024) 评论(5)

[置顶] web安全认证机制知多少

如今web服务随处可见,成千上万的web程序被部署到公网上供用户访问,有些系统只针对指定用户开放,属于安全级别较高的web应用,他们需要有一种认证机制以保护系统资源的安全,本文将探讨五种常用的认证机制及优缺点。Basic模式HTTP协议规范中有两种认证方式,一种是Basic认证,另外一种是Digest认证,这两种方式都属于无状态认证方式,所谓无状态即服务端都不会在会话中记录相关信息,客户端每次访问...
阅读(14153) 评论(0)

[置顶] 如何设计一个web容器

开发一个web容器涉及很多不同方面不同层面的技术,例如通信层的知识,程序语言层面的知识等等,且一个可用的web容器是一个比较庞大的系统,要说清楚需要很长的篇幅,本文旨在介绍如何设计一个web容器,只探讨实现的思路,并不涉及过多的具体实现。把它分解划分成若干模块和组件,每个组件模块负责不同的功能,下图列出一些基本的组件,并将对每个组件进行介绍。 连接接收器主要的职责就是监听是否有客户端套接字连接并接...
阅读(12689) 评论(11)

[置顶] 集群RPC通信

RPC即远程过程调用,它的提出旨在消除通信细节、屏蔽繁杂且易错的底层网络通信操作,像调用本地服务一般地调用远程服务,让业务开发者更多关注业务开发而不必考虑网络、硬件、系统的异构复杂环境。先看看集群中RPC的整个通信过程,假设从节点node1开始一个RPC调用,①先将待传递的数据放到NIO集群通信框架(这里使用的是tribes框架)中;②由于使用的是NIO模式,线程无需阻塞直接返回;③由于与集群其他...
阅读(5185) 评论(0)

[置顶] 内存数据网格hazelcast的一些机制原理

hazelcast使用文档可以直接看官方文档,但机制原理相关的资料基本没有,本人硬撸源码写的一些东西,跟大家分享一下。...
阅读(3397) 评论(1)

机器学习之支持向量机(SVM)

SVM SVM 即支持向量机,常用于二分类模型。它主要的思想是: 1. 它是特征空间上间隔最大的线性分类器。 2. 对于线性不可分的情况,通过非线性映射算法将低维空间的线性不可分的样本映射到高维特征空间,高维特征空间能够进行线性分析。 结构风险 对于指定的损失函数,根据一定的样本集就能根据这些样本来计算经验风险,而经验风险最小化就是根据样本集来最小化经验风险。 假如我们能获取到所有...
阅读(169) 评论(0)

我的2017年文章汇总——Java并发篇

近期准备把过去一年写的文章按照分类重新整理推送一遍,包括:“分布式”、“机器学习”、“深度学习”、“NLP”、“Java深度”、“Java并发核心”、“JDK源码”、“Tomcat内核”。 本篇推送java并发相关文章。 从JDK源码角度看并发的原子性如何保证 从JDK源码角度看java并发线程的中断 从JDK源码角度看并发锁的优化 从JDK源码角度看线程的阻塞和唤醒 从JDK源码角度...
阅读(752) 评论(0)

从JDK角度认识枚举enum

前言 对于比较稳定的值集合,Java 提供了枚举来定义,通过它可以很方便管理集合。那么 Java 的枚举是通过怎样的机制实现的?本文将从 JDK 角度来看看枚举的原理。 定义枚举 使用很简单,比如定义一个表示“环保”、“交通”、“手机”三个值的集合,那么就可以直接定义如下,然后可直接 Labels.ENVIRONMENT 使用, public enum Labels { E...
阅读(520) 评论(0)

基于典型相关分析的词向量

本文首发于雷锋网 前言 在NLP领域中,为了能表示人类的语言符号,一般会把这些符号转成一种数学向量形式以方便处理,我们把语言单词嵌入到向量空间中就叫词嵌入(word embedding)。 比如有比较流行的谷歌开源的 word2vec ,它能生成词向量,通过该词向量在一定程度上还可以用来度量词与词之间的相似性。word2vec采用的模型包含了连续词袋模型(CBOW)和Skip-Gram模...
阅读(745) 评论(0)

服务器模型——从单线程阻塞到多线程非阻塞(下)

前言的前言 服务器模型涉及到线程模式和IO模式,搞清楚这些就能针对各种场景有的放矢。该系列分成三部分: * 单线程/多线程阻塞I/O模型 * 单线程非阻塞I/O模型 * 多线程非阻塞I/O模型,Reactor及其改进 前言 这里探讨的服务器模型主要指的是服务器端对I/O的处理模型。从不同维度可以有不同的分类,这里从I/O的阻塞与非阻塞、I/O处理的单线程与多线程角度探讨服务器模型。...
阅读(370) 评论(0)

机器学习之牛顿法

泰勒公式首先看泰勒公式,对于函数,如果函数平滑且某点存在各阶导数,则可以用一个多项式来描述该点邻域的近似值。公式如下:牛顿法牛顿法一般用来求解方程的根和求解极值。数值优化算法除了梯度下降法外还有比较常用的一种方法是牛顿法。对于非线性方程,可以用牛顿迭代法进行求解,它收敛速度快。基本思想是:对于非线性函数f(x),根据泰勒公式得到x附近某个点x k  x_{k}展开的多项式可用来近似函数f(x)的值,...
阅读(817) 评论(0)

如何让你的传输更安全——NIO模式和BIO模式实现SSL协议通信

对于SSL/TLS协议,如果要每个开发者都自己去实现显然会带来不必要的麻烦,正是为了解决这个问题Java为广大开发者提供了Java安全套接字扩展——JSSE,它包含了实现Internet安全通信的一系列包的集合,是SSL和TLS的纯Java实现,同时它是一个开放的标准,每个公司都可以自己实现JSSE,通过它可以透明地提供数据加密、服务器认证、信息完整性等功能,就像使用普通的套接字一样使用安全套接字,...
阅读(349) 评论(0)

集群RPC通信怎么做

RPCRPC即远程过程调用,它的提出旨在消除通信细节、屏蔽繁杂且易错的底层网络通信操作,像调用本地服务一般地调用远程服务,让业务开发者更多关注业务开发而不必考虑网络、硬件、系统的异构复杂环境。RPC过程先看看集群中RPC的整个通信过程,假设从节点node1开始一个RPC调用, 1. 先将待传递的数据放到NIO集群通信框架中; 2. 由于使用的是NIO模式,线程无需阻塞直接返回; 3. 由于与集...
阅读(381) 评论(0)

服务器模型——从单线程阻塞到多线程非阻塞(中)

前言的前言 服务器模型涉及到线程模式和IO模式,搞清楚这些就能针对各种场景有的放矢。该系列分成三部分: * 单线程/多线程阻塞I/O模型 * 单线程非阻塞I/O模型 * 多线程非阻塞I/O模型,Reactor及其改进 前言 这里探讨的服务器模型主要指的是服务器端对I/O的处理模型。从不同维度可以有不同的分类,这里从I/O的阻塞与非阻塞、I/O处理的单线程与多线程角度探讨服务器模型。...
阅读(811) 评论(0)

服务器模型——从单线程阻塞到多线程非阻塞(上)

前言的前言服务器模型涉及到线程模式和IO模式,搞清楚这些就能针对各种场景有的放矢。该系列分成三部分: * 单线程/多线程阻塞I/O模型 * 单线程非阻塞I/O模型 * 多线程非阻塞I/O模型,Reactor及其改进前言这里探讨的服务器模型主要指的是服务器端对I/O的处理模型。从不同维度可以有不同的分类,这里从I/O的阻塞与非阻塞、I/O处理的单线程与多线程角度探讨服务器模型。对于I/O,可以分...
阅读(893) 评论(0)

从JDK源码看字节流和字符流

在各种 IO 中都会涉及到流的概念,比如网络 IO、磁盘IO、内存IO或其他设备IO,于是抽象出流概念,可以分为两大类:输出流和输入流。有了这些抽象就能很方便表达网络从某端传输到另外一端,或对磁盘进行读写操作。而 Java 还分出字节流和字符流,对字节和字符提供了方便的操作。从JDK源码看InputStream从JDK源码看OutputStream从JDK源码看Writer从JDK源码看Reader...
阅读(1110) 评论(0)

从JDK源码看Reader

概况Reader 是一个用于读字符流的抽象类,它将一些相通的读相关操作抽象到此类,方便各种读操作类的实现。一般来说子类只需要实现它的 read 和 close 两个方法,但如果有需要还可以重写 Reader 提供的公共方法。JDK 在 Reader 的基础上实现了很多有用的 xxxReader ,包括 BufferedReader、CharArrayReader、FilterReader、Inpu...
阅读(1533) 评论(0)

中文文本相似度的研究有什么用

前言人与计算机的交互过程中,如果能提供人类的自然语言形式来进行交流,那人与计算机就能更加亲密友好。而要实现这一机制就需要自然语言处理来处理,一般来说自然语言处理会涉及几个学科:计算机科学、语言学、统计学和数学等。不同语言的自然语言处理也存在差别,对于中文来说,很多时候都无法直接套用英语自然语言处理中相对成熟的理论。有很多基础工作也是需要我们自己去做,这就包括了中文相似度。相似度中文相似度按照长度可以...
阅读(1486) 评论(0)

从JDK源码看OutputStream

概况前面已经了解了输入流《从JDK源码看InputStream》,接着看对应的输出流,JDK 给我们提供了很多实用的输出流 xxxOutputStream,而 OutputStream 是所有字节输出流的抽象。包括 ByteArrayOutputStream 、FilterOutputStream 、BufferedOutputStream 、DataOutputStream 和 PushbackO...
阅读(1513) 评论(0)
327条 共17页1 2 3 4 5 ... 下一页 尾页
    作者
    https://github.com/sea-boat

    公众号:(内容包括分布式、机器学习、深度学习、NLP、Java深度、Java并发核心、JDK源码、Tomcat内核等等)



    微信:

    打赏作者

    如果您觉得作者写的文章有帮助到您,您可以打赏作者一瓶汽水(*^__^*)

    个人资料
    • 访问:1020517次
    • 积分:13638
    • 等级:
    • 排名:第1096名
    • 原创:321篇
    • 转载:5篇
    • 译文:1篇
    • 评论:342条
    博客专栏
    最新评论