![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网站后台
文章平均质量分 86
普通网友
这个作者很懒,什么都没留下…
展开
-
微博图床架构揭秘
在此声明:本文转自微博图床架构揭秘,觉得写得不错,在此转发以扩大影响,在此对原文作者表示感谢! 图片作为微博的核心内容元素,一直在微博内容战略中占有非常重要的地位,特别是近几年高质量移动拍摄终端的普及,越来越多用户倾向于用图在微博上表达自己的心情,态度和观点。微博的日发博量中,带图微博已接近60%。去年5月,随着微博多图功能上线,进一步强化了多媒体内容分享的用户体验。转载 2015-01-26 17:49:14 · 1152 阅读 · 0 评论 -
WebService浅析
目前工作主要是对接系统商,都是基于OSI五层模型中的最顶层-应用层web服务,屏蔽了下面传输层、网络层、数据链路层、物理层等操作。系统与系统之间通过网络交换数据,无论什么语言,应用层已经被封装成学习成本不高的API,尤其是Java这样一种开源框架较多的高级语言。前后大约对接了10+多家景区或者系统商,接口调用方式大致分为两种:HTTP和Webservice。对于HTTP,原理课本或者网上比较常见,相信都能了解一下,调用具体做法github上引入某种httpclient封装成符合自己业务或技术特点的类库。而对原创 2016-01-16 18:33:34 · 1456 阅读 · 0 评论 -
马尔科夫原理及应用场景
一、马尔科夫模型 马尔可夫模型,是指数学中具有马尔可夫性质的离散事件随机过程。该过程中,在给定当前知识或信息的情况下,过去(即当前以前的历史状态)对于预测将来(即当前以后的未来状态)是无关的。 《百度百科》 马尔可夫模型是随机变量X1,…Xn-1,Xn的序列,这些变量的范围所有可能取值集合,被称为状态空间,而Xn的值x则是在时间n的状态。用数学表达式的近似形式就是:P(Xn=x|Xn原创 2016-09-27 22:48:53 · 6048 阅读 · 0 评论 -
网站开发相关基础知识点重拾(持续更新中)
1、代理 代理服务器的工作机制很象我们生活中常常提及的代理商,假设你的机器为A机,你想获得的数据由B机提供,代理服务器为C机,那么具体的连接过程是这样的。 首先,A机需要B机的数据,它与C机建立连接,C机接收到A机的数据请求后,与B机建立连接,下载A机所请求的B机上的数据到本地,再将此数据发送至A机,完成代理任务。2、VPN 虚拟专用网络,主要功能在公用网络上建立专用网络,进行加密通讯。在企业网络中有广泛应用。VPN网关通过对数据包的加密和数据包目标地址的转换实现远程访问原创 2015-10-23 21:15:12 · 651 阅读 · 0 评论 -
Maven学习札记
1、dependencies 和 dependencyManagement 的区别在于:1.1)、dependencies:即使在子项目中不写该依赖项,那么子项目仍然会从父项目中继承该依赖项。1.2)、dependencyManagement:如果在子项目中不写该依赖项,那么子项目中是不会从父项目继承该依赖项的;只有在子项目中写了该依赖项,才会从父项目中继承该项,并且version 和 scope 都读取自 父pom。2、exclusions标签的作用exclusions:在相应的dependenc原创 2015-10-23 21:13:05 · 1397 阅读 · 0 评论 -
数据库读写分离方法浅析
笔者实际的问题是尝试读写分离,下面记录一下读写分离方法,欢迎斧正。DB读写分离理论上方案比较多,如中间件转发、应用层分离,数据库驱动等等,各种方法的优缺点如下:1、中间件转发通过mysql中间件做主从集群,Mysql Proxy、Amoeba、Atlas等中间件貌似都能符合需求。优点:对应用透明缺点:需要代理,增加网络等性能开销2、应用层分离应用层路由数据源实现读写分离,通过AOP或者注解来动态选择数据源优点:无需中间件,策略可选,可用来负载均衡缺点:耦合度高3、数据库驱动Replica原创 2016-10-07 21:05:19 · 4969 阅读 · 1 评论 -
aspectj-autoproxy Controller未生效解决方案
本周做业务需求,需要对api的响应时间做监控。第一想法是在需要监控的api里面答应日志,记录care的信息,这样的最大问题就是不容易扩展,需要在每个api里面添加几乎相同的代码。当时,Java的通用做法是切片,利用Java语言提供的反射能力,结合spring 的三大特性之一的aop(面向切面编程)思想,可以完全解耦的添加切片就行,这样在低耦合、高内聚的编程原则下是显得比较优雅,但是难免要牺牲一下效.Controller是定义在xxx-servlet.xml配置文件中,所以定义在applicationCont原创 2016-09-22 21:28:23 · 3120 阅读 · 0 评论 -
文本局部敏感哈希-MinHash算法原理
一、MinHash举例下面原文转自大牛博客:聚类之MinHash MinHash是基于Jaccard相似度的算法,一种降维的方法X,Y两个集合:X= {s1, s3, s6, s8, s9} ,Y= {s3, s4, s7, s8, s10}MinHash的基本原理:在X∪Y这个大的随机域里,选中的元素落在A∩B这个区域的概率,这个概率就等于Jaccard的相似转载 2016-09-18 23:03:06 · 6012 阅读 · 0 评论 -
文本局部敏感哈希-SimHash算法原理
最近在思考大量文本判重的问题,由于文本数据量大,加之文本判重算法,如BF、KMP、最长公共子串、后缀数组、字典树、DFA等计算时空复杂度并不适合数据量较大的工业应用场景。查找了相关资料,发现LSH(local sencetive ),即局部敏感哈希算法,可以应用本场景。LSH是指面对海量高维数据时,一般的算法无法快速降维查询相似度高的数据子集,利用特定的hash算法,将高维数据映射到低维空间,以较高概率快速寻找相似度高的数据子集。由于这方面积累极少,自己写出的文章比较肤浅,所以直接整理粘贴大牛文章,在此表示转载 2016-09-18 22:10:03 · 4249 阅读 · 1 评论 -
Web开发进阶之Servlet理解
接触Java web开发半年多了,一直想找个时间思考整理一下Apache、Tomcat、Servlet、Spring原理与作用范畴,也有意识的阅读相关开源代码,但是由于基本认识不够,不能全局的描述各个框架的设计,所以下面这篇文章主要是在转载博客园上一位大牛的认识原文,可能转载有点low但是能学到知识和分享自己的认识也是挺好的一件事 。基本上依靠Apache、Tomcat、Servlet、Spring,Web应用就初步搭建起来了,剩下的可能是持久化和业务逻辑的编写与设计。 首先谈谈Servlet。Se转载 2016-02-03 23:34:48 · 960 阅读 · 1 评论 -
quartz调度框架
最近在公司做抓取竞对web数据的爬虫,由于数据量比较大,不可能全量实时更新,所以采用轮询的定时任务来定期抓取数据。Quartz由java编写的开源作业调度框架,可以用来快速地创建一个实现org.quartz.Job接口的java类。Job接口包含唯一的方法:转载 2015-09-12 00:39:48 · 573 阅读 · 0 评论 -
Java对于Cookie的操作详解
在此声明:本文转自原文,最近学些Web后台,用到Java相关知识点,觉得下面文章不错,在此转发以扩大影响,同时希望能帮助广大的开发者,在此对原文作者表示感谢! 1.设置CookieCookie cookie = new Cookie("key", "value");cookie.setMaxAge(60); 设置60秒生存期,如果设置为负值的话,则为浏览器进程Cookie(内存中保转载 2015-04-19 19:57:07 · 2895 阅读 · 0 评论 -
servlet/filter/listener/interceptor区别与联系
在此声明:本文转自原文,最近初学Web后台,用到web开发相关知识点,觉得下面文章不错,在此转发以扩大影响,同时希望能帮助广大的开发者,在此对原文作者表示感谢! 由于最近两个月工作比较清闲,个人也比较“上进”,利用工作空余时间,也继续学习了一下,某天突然想起struts2和struts1的区别的时候,发现为什么struts1要用servlet,而struts2要用f转载 2015-04-12 18:15:35 · 544 阅读 · 0 评论 -
大型网站架构改进历程:存储的瓶颈(中)
在上篇,我讲到某些网站在高并发下会报出503错误,503错误的含义是指网站服务端暂时无法提供服务,503还表达了网站服务端现在有问题,但是以后可能会提供正常的服务,对http协议熟悉的人都知道,5开头的响应码表达了服务端出现了问题,在我们开发测试时候最为常见的是500错误,500代表的含义是服务端程序出现了错误导致网站无法正常提供服务,500通常是服务端异常和错误所致,如果生产系统里发现了500错误,那么只能说明网站存在逻辑性的错误,这往往是系统上线前的测试做的不到位所致。回到503错误,我上文解释为拒绝访转载 2015-01-23 20:45:23 · 741 阅读 · 0 评论 -
关于大型网站技术演进的思考(一)--存储的瓶颈(上)
在此声明:本文转自博客园的夏天的森林,关于大型网站技术演进的思考(一)--存储的瓶颈(上),在此表示感谢! 前不久公司请来了位互联网界的技术大牛跟我们做了一次大型网站架构的培训,两天12个小时信息量非常大,知识的广度和难度也非常大,培训完后我很难完整理出全部听到的知识,今天我换了个思路是回味这次培训,这个思路就是通过本人目前的经验和技术水平来思考下大型网站技术演转载 2015-01-23 21:16:55 · 727 阅读 · 0 评论 -
mysql、zookeeper、redis和elasticsearch主从同步机制
mysql、zookeeper、redis和elasticsearch主从机制。 当系统规模达到一定程度时,传统的单机模式往往无法满足,于是就有了分布式系统。分布式系统面临的问题是CAP问题 。CAP具体含义如下:1、consistency:一致性,数据一致更新,保持数据同步更新2、availability:可用性,好的响应性能3、partition tolerance:分区容错性,可靠性定理:任何分布式系统只可同时满足二点,没法三者兼顾忠告:架构师不要将精力浪费在如何设计能满足三者的完美分布式系原创 2016-10-03 23:06:58 · 9781 阅读 · 1 评论