自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(176)
  • 资源 (1)
  • 收藏
  • 关注

微服务架构下的服务关联图

在微服务架构下,服务之间的关系是非常复杂的,是一个典型的有向有环图,在一个中等规模的项目中,一般会有100多个服务,而大型项目中,则会有数百个服务。 假设我们有如下6个服务:  每个服务都指定了自己依赖的服务: AaaSvc:BbbSvc:CccSvc:DddSvc:EeeSvc:FffSvc:我们如何把如上6个服...

2018-09-28 22:29:32 2011

微服务管理平台如何防止开发人员的本地环境污染注册中心

微服务的代码由两部分构成,一部分是根据模型定义自动生成的,这部分代码不可修改,另外一部分代码是留给开发人员实现业务逻辑的,可以修改。 防止开发人员的本地环境污染注册中心最开始的解决方法是,在自动生成的代码中,强制指定了微服务运行的IP,模板文件applicationProperties.ftl中的相关片段如下: eureka.instance.prefer-ip-address...

2018-09-12 23:06:34 467

微服务日志之实时日志

     在微服务架构中,一般会有几百甚至几千个服务,这些服务可能会被自动部署到集群中的任何一台机器上,因此,开发人员在开发的时候,要想实时查看日志输出就很不方便了,首先需要查询出服务被部署到哪一台机器上了,其次要向管理员申请目标机器的访问权限,接着要用SSH登录到目标服务器上,使用tail -f来查看实时日志,而tail -f的功能很有限,使用起来也很不方便。这个开源项目就是为了解决微服...

2018-07-01 14:42:26 1164

数据生成器

data-generator是一个Java实现的数据生成器开源项目。 如果你在从事大数据BI的工作,想对比一下MySQL、GreenPlum、Elasticsearch、Hive、Presto、Impala、Drill、HAWQ、Druid、Pinot、Kylin、ClickHouse等不同实现方案之间的表现,那你就需要一份标准的数据进行测试,这个开源项目就是为了生成这样的标准数据。...

2018-04-29 23:02:21 558

Serverless架构:有明云PaaS

        今天大多数公司无论是在开发应用程序的时候还是将其部署到服务器的时候,无论是选择公有云还是私有云,都需要提前估算究竟需要多少台服务器,都需要部署运行应用程序和依赖的各种各样的软件到服务器上。如果我们不想在这些与业务无关的繁琐的细节上耗费精力,是否有一种简单的架构能够满足我们的需求呢?答案是Serverless(无服务器)架构。        Serverless架构,或者称为无...

2018-02-10 13:46:19 353

一种解决HTTP抓取网页超时设置无效的方法

今天发现superword在获取单词定义的时候,对于不常见单词,网页打开很慢,超过10秒,经检查,发现是利用Jsoup来抓取单词定义的时候,设置的超时3秒无效,_getContent方法的执行时间超过10秒,代码如下:  public static String getContent(String url) { String html = _getContent(...

2017-06-17 20:26:20 343

最频繁访问驻留缓存算法

在搜索系统中,如何缓存搜索最频繁的1000个搜索结果?自定制的精准短文本搜索服务项目代码 本文利用了ConcurrentHashMap和AtomicLong实现了线程安全且支持高并发的最频繁访问驻留缓存算法,除了缓存功能,还提供了缓存状态查询接口,非常实用。 比如,在搜索管理界面可看到如下缓存状态: 缓存状态 最大缓存数量: 1000当前缓存数量: 11驱逐缓...

2017-01-26 15:39:45 161

保障服务的持续高可用、高性能及负载均衡

保障服务的持续高可用、高性能及负载均衡 项目主页 高可用: 服务多副本高性能: 超时限制负载均衡: 环形队列已经实现的功能:1. HTTP调用方式的搜索服务2. REDIS访问一句话说明白这个项目的原理:后端有多个一模一样的搜索,还有多个一模一样的REDIS,中间层的业务逻辑不直接调用搜索和REDIS,而是通过这个组件来调用  在W...

2017-01-24 22:42:12 223

15道非常经典的Java面试题

试题如下: 参考答案:import java.io.FileNotFoundException;import java.io.IOException;import java.util.ArrayList;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executor...

2017-01-21 11:23:51 431

自定制的精准短文本搜索服务

自定制的精准短文本搜索服务 项目主页 自定制的精准短文本搜索服务 以公司名称搜索来驱动短文本搜索, 这里做了简化, 实际中会涉及更多的属性, 如公司类型, 所属区域等等, 自定制就有很大的灵活性 使用方法 git clone https://github.com/ysc/short-text-search.gitcd short-text-searchu...

2017-01-18 14:30:54 305

分布式环境下的原子计数器和API每天调用次数限制

利用Zookeeper来实现分布式环境下的原子计数器和API每天调用次数限制 项目主页 分布式环境下的原子计数器和API每天调用次数限制利用Zookeeper来实现分布式环境下的原子计数器和API每天调用次数限制 如何设置和获取API调用次数限额String apiType = "1";指定新的限制值:CountLimit.setLimit(apiType...

2017-01-18 14:26:36 518

superword中一次精彩的重构

我们先来看看需要重构的功能是一个下拉选择框,可任意选择11部词典中的一部,访问地址:http://123.56.99.179/select/dictionary-select.jsp?dict=RANDOMHOUSE,在HTML中的效果如下图所示:HTML代码如下:?123456789101112131415...

2016-04-21 21:58:01 187

superword中的模板抽取实践

superword这个项目,全使用JAVA8新特性: https://github.com/ysc/superword ,一开始只是我的一个英语单词分析工具,用于生成HTML片段然后发到博客中,后来功能越来越强于是我就做成一个项目了,再后来有人跟我说自己不是计算机专业的不会用这个软件,于是我就改造成了一个WEB项目,这个项目现在有点需要改进的地方,就是把JAVA代码生成HTML的这个逻辑改成使用...

2016-04-03 00:08:22 373

互联网时代下的合作治理机制及其应用:以开源软件项目为例

互联网时代下的合作治理机制及其应用:以开源软件项目为例陈晓红伴随着国家战略层面的推动,互联网在2015年成为了全国瞩目的焦点。“互联网+”开放数据、分享经济、大众创业万众创新,所有改革都寄托于互联网作为一种技术工具、组织模式、文化理念在改造传统产业方面的积极作用。互联网模式由此成为最受人关注的概念之一。但究竟什么才是互联网模式的内涵?谁又代表了互联网模式的潜在生产力?对此问题的答...

2016-03-23 02:29:21 851

ES中如何使用逗号来分词

使用软件版本:elasticsearch-2.2.01. setting:?1234567891011121314curl -XPOST 'http://localhost:9200/data' -d '{    "settings": {        "analysis": {...

2016-03-04 22:49:56 716

一种使用随机抽样梯度下降算法来预估词汇量的方法

我们经常可以看到各种各样的英语词汇量测试功能,你测试过吗?你觉得准吗?我使用过有道词典的词汇量测试功能,我认为它最大的问题是,不管是谁不管测多少次,每次测的词都是固定不变的,这就好像高考,全国各地年复一年都考同一套题。当然,它是怎么来评估词汇量,使用什么算法,那就更不知道了。本文提出了一种使用随机抽样梯度下降算法来预估词汇量的方法,经大量用户反映,很准,你是不是心动了,想马上试一试呢...

2015-12-21 02:09:33 435

superword开源项目中的定义相似规则

两个词之间的关系有同义、反义、近义(有多近?)、相关(有多相关?)等等。我们如何来判断两个词之间的关系呢?利用计算机能自动找出这种关系吗?当然可以,不仅能找出来,而且还能量化出有多近和有多相关。本文描述了superword开源项目中的定义相似规则,利用词的定义计算词和词之间的相似性。词的定义使用的是韦氏词典,同时也支持牛津词典。相似性算法使用的是word分词提供的10大相似性算法。定义...

2015-12-07 18:49:06 192

GRE必备神器superword

superword是一个Java实现的英文单词分析和辅助阅读开源项目,主要研究英语单词音近形似转化规律、前缀后缀规律、词之间的相似性规律和辅助阅读等等。支持最权威的2部中文词典和9部英文词典,支持23种分级词汇,囊括了所有的英语考试,还专门针对程序员提供了249本最热门的技术书籍的辅助阅读功能。superword在线访问地址:http://123.56.99.179    ...

2015-11-28 01:39:02 214

电影功夫熊猫2使用的单词分析

    你英语四级过了吗?功夫熊猫2看了吗?去除停用词后,功夫熊猫2使用了816个英语单词,你会说很简单吧,别急,我给你分析一下,这些单词中有125个单词不在四级词汇范围内,花两分钟时间看看你是否认识这些单词,单词后面跟的数字表示该单词在电影中出现的次数。    你也可以获取本文的分析程序,这样你就可以分析其他电影了。看一部电影之前,先通过这种方式分析一下,然后学习自己不认识的单词,然后再...

2015-11-25 16:49:01 727

这真真是极好的

“这真真是极好的”该怎么翻译成英文,有多少种翻译方法呢?“真”在这里是副词,表示“完全确实,毫无疑问”,用了两个真就是在使用堆叠效果,类似200%的用法,重点是“极好的”,英文中有多少个词可以用来表示“极好的”呢?我在这里列出了31个,虽然他们各自有些微妙的区别,但是都可以用来表达“极好的”这个含义。所以最终翻译为:“That's excellent. ”,excellent可以替换...

2015-11-25 02:10:13 365

电影功夫熊猫使用的单词分析

    你英语四级过了吗?功夫熊猫看了吗?去除停用词后,功夫熊猫使用了800个英语单词,你会说很简单吧,别急,我给你分析一下,这些单词中有151个单词不在四级词汇范围内,花两分钟时间看看你是否认识这些单词,单词后面跟的数字表示该单词在电影中出现的次数。    你也可以获取本文的分析程序,这样你就可以分析其他电影了。看一部电影之前,先通过这种方式分析一下,然后学习自己不认识的单词,然后再去看...

2015-11-16 00:04:39 527

关于机器翻译的一点小小的想法

巴比伦塔的失败说明了语言不通导致的沟通不畅会严重影响生产力,然而我们又无法统一语言,所以机器翻译是一个重要的研究领域。 人类的语言是如此繁杂不规范,尽管有语法,但是几乎处处有例外。 我们在书面和口头交流的时候很难把全部的语义用语言表达出来,语言只是表达了一小部分,而且这部分还可能会有歧义甚至残缺不全,剩下的部分我们需要通过情景经验常识来识别。 接收到信息之后,我们根据接...

2015-11-13 15:31:15 232

如何写程序自动下载BBC Learning English的所有在线课程

BBC Learning English在线3大系列课程:Lower intermediate、Intermediate、English My Way 声音很悦耳,尤其是Jamaica Inn和The Importance of Being Earnest,堪称完美,百听不厌,这对于英语兴趣的培养和英语能力的提升非常有帮助。到目前为止,这些课程的mp3和pdf文件已经有2859个,而且还在持续...

2015-10-21 19:07:23 338

如何抓取Js动态生成数据且以滚动页面方式分页的网页

当我们在进行数据抓取的时候,如果目标网站是以Js的方式动态生成数据且以滚动页面的方式进行分页,那么我们该如何抓取呢?如类似今日头条这样的网站:http://toutiao.com/我们可以使用Selenium来搞定这件事情。Selenium的设计目的虽然是用于Web应用程序的自动化测试,但是却非常适合用来做数据抓取,可以非常简单地绕过网站的反爬虫限制,因为Selenium直接运行在浏览...

2015-10-14 00:03:35 284

阿里搜索引擎技术介绍

iSearch4性能优化之路.pptxiSearch5商品搜索特色功能.pptxiSearch5实现原理之实时搜索.pptxisearch5性能优化.pptxiSearch5调度系统.pptxiSearch演变历程.pptxOpenSearch.pptxSP-技术报告.pptx广告实时引擎.pp...

2015-10-11 02:15:49 1147

QuestionAnsweringSystem技术实现简要分析

内容提要QuestionAnsweringSystem是一个Java实现的人机问答系统,能够自动分析问题并给出候选答案。IBM人工智能计算机系统"沃森"(Watson)在2011年2月美国热门的电视智力问答节目"危险边缘"(Jeopardy!)中战胜了两位人类冠军选手,QuestionAnsweringSystem就是IBM Watson的Java开源实现。本文从系统架构、主要数据结构、关键...

2015-10-09 10:42:57 169

QuestionAnsweringSystem获得100offer赞助活动的「最具人气奖」

100offer举办的「寻找实干和坚持的技术力量」Side Project赞助活动经过12天的作品征集及7天的评审与投票,最佳作品奖、优秀作品奖、最具人气奖现已出炉,结果公布地址:http://i.100offer.com/projects/result。值得一提的是,本次赞助活动共有270个开源项目参与,最终确定的有效投票数为34176,100offer特此向Wikipedia捐款34176...

2015-09-29 19:13:44 176

100offer举办的「寻找实干和坚持的技术力量」开源项目投票排名分析程序

由于100offer举办的「寻找实干和坚持的技术力量」开源项目投票活动没有按照票数排序的功能,所以本文写了个小程序来实现这个功能,代码如下:import org.jsoup.Jsoup;import org.jsoup.nodes.Element;import java.net.URL;import java.util.HashMap;import java.util.M...

2015-09-26 17:55:22 1186

使用Ganglia来监控你的集群

鉴于Ganglia官方没有提供很好的入门文档,所以,本文给出一个基于CentOS 6.6快速搭建Ganglia监控系统的入门指南,如果需要进一步深入Ganglia,可看Ganglia专著《Monitoring with Ganglia》以及Ganglia官网。1、sudo yum install ganglia ganglia-gmetad ganglia-gmond ganglia-web...

2015-09-26 17:52:43 221

数值类型与字节数组之间的相互转换

我们在上文 如何选择使用字符串还是数字呢? 中阐述了使用数值类型的好处,那么问题来了,如何在数值类型与字节数组之间相互转换呢?我们先看看单个数值类型和字节数组之间的转换,我们以Integer类型为例:public static byte[] intToBytes(int x) { ByteBuffer intBuffer = ByteBuffer.allocate(Intege...

2015-09-04 00:14:21 212

如何选择使用字符串还是数字呢?

 在我多年的开发经验中,经常发现的一个情况就是,很多项目的对象字段或者是数据库字段本来是数字类型的,却被定义成字符串类型,这无关痛痒吗?对于小项目来说,可能没什么影响,反正只要业务逻辑正确即可,性能没什么问题,因为数据也不多,用户也不多。然而,对于大数据处理来说,这个可不是小事,从字符串替换为数字类型,可以极大地节省内存、磁盘存储以及网络带宽,减少IO的代价,而且很多数据结构和算法...

2015-08-31 16:18:12 276

word v1.3 发布,Java 分布式中文分词组件

word分词是一个Java实现的分布式的中文分词组件,提供了多种基于词典的分词算法,并利用ngram模型来消除歧义。能准确识别英文、数字,以及日期、时间等数量词,能识别人名、地名、组织机构名等未登录词。能通过自定义配置文件来改变组件行为,能自定义用户词库、自动检测词库变化、支持大规模分布式环境,能灵活指定多种分词算法,能使用refine功能灵活控制分词结果,还能使用词频统计、词性标注、同义标注...

2015-08-29 09:51:28 228

对于规范和实现,你会混淆吗?

昨晚和朋友聊天,喝了点咖啡,由于我经常喝茶,很长时间没喝咖啡了,所以失眠了,于是起床读JVM规范,读完后在朋友圈发了一条信息:JVM Run-Time Data Areas:The Java Virtual Machine defines various run-time data areas that are used during execution of a program. S...

2015-07-19 11:15:37 110

LRU (Least Recently Used) 算法的Java实现

实现代码如下:import java.util.LinkedHashMap;import java.util.Map;/** * LRU (Least Recently Used) 算法的Java实现 * @param <K> * @param <V> * @author 杨尚川 */public class LRUCache&lt...

2015-07-15 21:59:54 169

英语学习资源推荐

superword BBC:http://www.bbc.co.uk/learningenglish/    BBC课程下载(百度网盘)  BBC ON YOUTUBE VOA:http://learningenglish.voanews.com/   VOA ON YOUTUBE 11个老师,几百个小时覆盖初中高级的免费英语学习视频:http://www.engvid.co...

2015-07-01 22:07:53 236

Commonly Confused Words

When two words are confused for one another the results can sometimes be comical, for example when affluent is confused with effluent or desert with dessert.On other occasions mix-ups between commo...

2015-06-05 09:00:40 230

在线英语词典

1、Collinshttp://www.collinsdictionary.com/ 2、Merriam-Webster http://www.wordcentral.com/http://www.merriam-webster.com/ 3、Oxfordhttp://www.oxforddictionaries.com/ 4、Cambridge...

2015-06-05 08:31:17 243

15大在线公开课网站

1、edxhttps://www.edx.org/ 2、sliderulehttps://www.mysliderule.com/ 3、openlearnhttp://www.open.edu/openlearn/ 4、jhsphopenhttp://ocw.jhsph.edu/ 5、coursadehttp://www.coursade.c...

2015-06-04 17:18:17 229

正确地猜测用户的意图

当我们在Collins词典中输入“voilent”的时候,会有如下提示:当我们在Google中搜索“voilent”的时候,也会有如下提示:Collins和Google是如何做到的呢?它是怎么知道我们把i和o的位置弄反了呢?当我们输入一个词,而这个词不存在于Google的倒排索引或者Collins的词典中时,我们就可以假设用户输入可能有误,接着我们通过算法找出一个和用户的输入...

2015-06-03 19:17:33 196

利用word分词提供的文本相似度算法来辅助记忆英语单词

本文实现代码:利用word分词提供的文本相似度算法来辅助记忆英语单词本文使用的英语单词囊括了几乎所有的考纲词汇共18123词:/** * 考纲词汇 * @return */public static Set<Word> getSyllabusVocabulary(){ return get("/word_primary_school.txt",...

2015-06-03 19:15:26 186

AJAXAJAXAJAXAJAX

AJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAXAJAX

2008-10-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除