自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(299)
  • 收藏
  • 关注

转载 P2P技术详解(三):P2P技术之STUN、TURN、ICE详解

本文是《P2P理论详解》系列文章中的第2篇,总目录如下:《P2P技术详解(一):NAT详解——详细原理、P2P简介》《P2P技术详解(二):P2P中的NAT穿越(打洞)方案详解》《P2P技术详解(三):P2P技术之STUN、TURN、ICE详解》(本文)➋P2P相关的其它资源:《通俗易懂:快速理解P2P技术中的NAT穿透原理》《最新收集NAT...

2019-03-08 13:15:00 578

转载 turn协议的工作原理

Allocate请求 客户端通过发送Allocate请求给STUN服务器,从而让STUN服务器为A用户开启一个relay端口。a) 客户端A向STUN Port发送Allocate请求(图中绿色部分)** b) **STUN服务器接收到客户端A的Allocate请求,服务器一看是Al...

2019-03-08 11:40:00 476

转载 iOS捷径(Workflow 2.0)拓展

前言iOS12 捷径(Workflow 2.0)入门iOS12 捷径(Workflow 2.0)进阶iOS12捷径(Workflow 2.0)实例大全注:本文主要介绍如何获取URL Schema的一种方式,以支付宝为例。捷径.png支付助手3.1捷径实例:http...

2019-02-19 11:52:00 3231

转载 支付宝 二维码/转账码/生成方式,突破二维码生成数量的限制

支付宝收款的几种方式:通过xposed 设置金额/备注.然后可以得到一张二维码.这是传统的方式.通过支付宝的接口,自己拼接字符串.然后根据字符串生成一个二维码对于对于传统方式.支付宝限制了一天二维码的生成数量.在这之间简直是好用得不要不要得.但是突然间支付宝爸爸说.你搞那么多二维码干啥.还备注...一天给你20张够不够?于是乎一瞬间哀鸿遍野.有得同学有先见之明,生...

2019-02-19 11:36:00 1031

转载 支付宝-API接口解析-转账到银行

支付宝-API接口解析-转账到银行扫码转账测试地址解析内容:alipays://platformapi/startapp?appId=09999988&actionType=toCard&sourceId=bill&cardNo=6217000030001234567&bankAccount=%E9%A9%AC%E4%B...

2019-02-19 11:35:00 6139

转载 浅析套接字中SO_REUSEPORT和SO_REUSEADDR的区别

Socket的基本背景在讨论这两个选项的区别时,我们需要知道的是BSD实现是所有socket实现的起源。基本上其他所有的系统某种程度上都参考了BSD socket实现(或者至少是其接口),然后开始了它们自己的独立发展进化。显然,BSD本身也是随着时间在不断发展变化的。所以较晚参考BSD的系统比较早参考BSD的系统多一些特性。所以理解BSD socket实现是理解其他socket实现的...

2019-01-16 10:26:00 112

转载 SpringMVC启动过程详解(li)

转自https://www.cnblogs.com/RunForLove/p/5688731.html通过对SpringMVC启动过程的深入研究,期望掌握Java Web容器启动过程;掌握SpringMVC启动过程;了解SpringMVC的配置文件如何配置,为什么要这样配置;掌握SpringMVC是如何工作的;掌握Spring源码的设计和增强阅读源码的技巧。目录1.Web容器...

2018-12-25 15:20:00 98

转载 无感知的热部署切换

cd distribution-service-sdkmvn -s /root/maven/settings-dev.xml -gs /root/maven/settings-dev.xml deploy#echo "kill 99jar包"ID=`ps -ef | grep java | grep distribution-service-99 |awk '{pri...

2018-12-14 14:12:00 488

转载 这个女生说:弄懂本文前,你所知道的区块链可能都是错的

整个区块链行业的凛冽寒冬中,价格的涨跌已经左右了太多的人头脑之中的理智。可是,众人之中,究竟有几个人真正理解了区块链技术的密码学机制与分布式计算?究竟有几个人还会关心区块链在技术上的创新?尘归尘,土归土。可能只有巨大的泡沫消散之后,区块链才能通过技术创新显示出真正的影响力。让区块链回归技术与应用的本质,这也是区块链大本营一直以来的定位。然而,传播这样的内容和话题,离不开货真价实的技术...

2018-11-29 14:32:00 465

转载 为什么我们做分布式使用Redis?

绝大部分写业务的程序员,在实际开发中使用 Redis 的时候,只会 Set Value 和 Get Value 两个操作,对 Redis 整体缺乏一个认知。这里对 Redis 常见问题做一个总结,解决大家的知识盲点。1、为什么使用 Redis在项目中使用 Redis,主要考虑两个角度:性能和并发。如果只是为了分布式锁这些其他功能,还有其他中间件 Zookpeer 等代替,并非一定...

2018-11-29 13:45:00 157

转载 Java内存模型原理,你真的理解吗?

【51CTO.com原创稿件】这篇文章主要介绍模型产生的问题背景,解决的问题,处理思路,相关实现规则,环环相扣,希望读者看完这篇文章后能对 Java 内存模型体系产生一个相对清晰的理解,知其然知其所以然。内存模型产生背景在介绍 Java 内存模型之前,我们先了解一下物理计算机中的并发问题,理解这些问题可以搞清楚内存模型产生的背景。物理机遇到的并发问题与...

2018-11-29 13:15:00 88

转载 CentOS 7.4 下搭建 Elasticsearch 6.3 搜索群集

上个月 13 号,Elasticsearch 6.3 如约而至,该版本和以往版本相比,新增了很多新功能,其中最令人瞩目的莫过于集成了 X-Pack 模块。而在最新的 X-Pack 中 Elasticsearch SQL 已经可用,虽然还处于实验阶段,但是相对于编写复杂的 DSL 查询语句,SQL 语句还是更加亲民,更易于上手。想体验新版 Elasticsearch 6.3 的新功...

2018-11-16 16:49:00 71

转载 CentOS 7下ElasticSearch集群搭建案例

最近在网上看到很多ElasticSearch集群的搭建方法,本人在这人使用Elasticsearch5.0.1版本,介绍如何搭建ElasticSearch集群并安装head插件和其他插件安装方法。一、搭建环境(2台CentOS7系统服务器)所需软件  Elasticsearch-5.0.1.tar.gz  node-v4.2.2-linux-x64.tar...

2018-11-16 16:47:00 142

转载 分布式系统理论基础 - 一致性、2PC和3PC

引言狭义的分布式系统指由网络连接的计算机系统,每个节点独立地承担计算或存储任务,节点间通过网络协同工作。广义的分布式系统是一个相对的概念,正如Leslie Lamport所说[1]:What is a distributed systeme.Distribution is in the eye of the beholder.To the user sitting at t...

2018-11-12 14:48:00 105

转载 分布式系统理论进阶 - Raft、Zab

《分布式系统理论进阶 - Paxos》介绍了一致性协议Paxos,今天我们来学习另外两个常见的一致性协议——Raft和Zab。通过与Paxos对比,了解Raft和Zab的核心思想、加深对一致性协议的认识。RaftPaxos偏向于理论、对如何应用到工程实践提及较少。理解的难度加上现实的骨感,在生产环境中基于Paxos实现一个正确的分布式系统非常难[1]:There a...

2018-11-12 14:42:00 120

转载 Paxos,Raft,Zab一致性协议-Raft篇

Raft是一个一致性算法,旨在易于理解。它提供了Paxos的容错和性能。不同之处在于它被分解为相对独立的子问题,它清楚地解决了实际系统所需的所有主要部分。我们希望Raft能够为更广泛的受众提供共识,并且这个更广泛的受众将能够开发出比现在更多的高质量共识系统。Raft是一个通过管理一个副本日志的一致性算法。它提供了跟(multi-)Paxos一样有效的功能,但是它的架构和Paxos...

2018-11-12 14:25:00 232

转载 P2P 网络核心技术:Gossip 协议

背景Gossip protocol 也叫 Epidemic Protocol (流行病协议),实际上它还有很多别名,比如:“流言算法”、“疫情传播算法”等。这个协议的作用就像其名字表示的意思一样,非常容易理解,它的方式其实在我们日常生活中也很常见,比如电脑病毒的传播,森林大火,细胞扩散等等。Gossip protocol 最早是在 1987 年发表在 AC...

2018-11-12 14:10:00 311

转载 分布式系统Paxos算法

这是一个有关Paxos算法非常形象的讲解与示范。Paxos是能够基于一大堆完全不可靠的网络条件下却能可靠确定地实现共识一致性的算法。也就是说:它允许一组不一定可靠的处理器(服务器)在某些条件得到满足情况下就能达成确定的安全的共识,如果条件不能满足也确保这组处理器(服务器)保持一致。什么是共识?  具体来说是这样:分布式系统中由于网络之间通讯可能会中断,虽然概率很低...

2018-11-12 13:57:00 112

转载 Hacker News的热门排名算法(转)

Hacker News是一家关于计算机黑客和创业公司的社会化新闻网站,由Paul Graham的创业孵化器Y Combinator创建。与其它社会化新闻网站不同的是 Hacker News 没有踩或反对一条提交新闻的选项(不过评论还是可以被有足够 Karma 的用户投反对票,或是投支持票);只可以赞或是完全不投票。简而言之,Hacker News 允许提交任何可以被理解为“任何...

2017-03-06 14:17:00 151

转载 cessss

[文字]关注1啊啊啊啊啊点击关注微信点击关注微信2点击关注微信3关注2啊啊啊啊啊啊啊啊啊啊啊关注3啊啊啊啊啊啊啊啊关注4啊啊啊啊啊啊啊啊关注5啊啊啊啊啊啊啊啊关注6啊啊啊啊啊啊啊啊啊啊啊转载于:https://www.cnblogs.com/zhiji6/p/5667286.html...

2016-07-13 16:13:00 93

转载 从“黑掉Github”学Web安全开发

Egor Homakov(Twitter:@homakov个人网站:EgorHomakov.com)是一个Web安全的布道士,他这两天把github给黑了,并给github报了5个安全方面的bug,他在他的这篇blog——《How I hacked Github again》(墙)说明了这5个安全bug以及他把github黑掉的思路。Egor的这篇文章讲得比较简单,很多地方一笔带过...

2015-05-05 16:08:00 82

转载 聊聊JVM的年轻代

1.为什么会有年轻代我们先来屡屡,为什么需要把堆分代?不分代不能完成他所做的事情么?其实不分代完全可以,分代的 唯一理由就是优化GC性能。你先想想,如果没有分代,那我们所有的对象都在一块,GC的时候我们要找到哪些对象没用,这样就会对堆的所有区域进行扫描。而 我们的很多对象都是朝生夕死的,如果分代的话,我们把新创建的对象放到某一地方,当GC的时候先把这块存“朝生夕死”对象的区域进行回收...

2015-05-05 14:18:00 76

转载 Deployment options

Play applications can be deployed virtually anywhere: inside Servlet containers, as standalone servers, in Google Application Engine, Stack, a Cloud, etc...Standalone Play applicationsThe sim...

2015-04-22 11:23:00 570

转载 Put your application in production

Here some simple tips to optimize your application for production.Configure your application.confFirst off, the best way to specify production mode is to give a specific ID to your production...

2015-04-22 11:14:00 138

转载 Manage application.conf in several environments

When you work in a team, different developers will use different configuration keys in theirapplication.conf. For example, the log level, some database configuration… This generally leads to recu...

2015-04-22 11:13:00 59

转载 Managing database evolutions

When you use a relational database, you need a way to track and organize your database schema evolutions. Typically there are several situation where you need a more sophisticated way to track yo...

2015-04-22 11:12:00 91

转载 Logging configuration

The Play logger is built onLog4j. Since most Java libraries use Log4j or a wrapper able to use Log4j as a backend, you can easily configure logging that is well-suited to your application.Logg...

2015-04-22 11:12:00 170

转载 Dependency management

Play’s dependency management system allows you to express your application’s external dependencies in a singledependencies.ymlfile.A Play application can have three kinds of dependencies:...

2015-04-22 11:11:00 247

转载 Play modules

A Play application can be assembled from several application modules. This allows you to reuse application components across several applications or split a large application into several smaller...

2015-04-22 11:10:00 101

转载 安全指导

本章译者:@nixil虽然Play在设计之初就考虑了安全性问题,但是任何人都无法阻止程序员们自毁长城。以下的向导将会涉及web应用常见的安全性问题,以及在Play中该如何避免。Sessions你经常会需要保存一些跟用户有关的信息,比如登录状态之类的。如果没有session,用户就得在每个请求当中都携带认证信息。所谓session就是一组储存在用户浏览器的cookie中的数...

2015-04-22 11:09:00 106

转载 Test your application

Creating automatic test suites for your application is a good way to make it robust. It allows you to work in a very agile way.Play tests are built usingJUnit 4orSeleniumdepending what you ...

2015-04-22 11:08:00 109

转载 Use a cache

To create high-performance systems, sometimes you need to cache data. Play has a cache library and will useMemcachedwhen used in a distributed environment.If you don’t configure Memcached, Pl...

2015-04-22 11:07:00 54

转载 Sending e-mail

E-mail functionality uses theApache Commons Emaillibrary under the hood. You can use theplay.libs.Mailutility class to send e-mail very easily.A simple e-mail:SimpleEmail email = new Simpl...

2015-04-22 11:07:00 495

转载 国际化支持(I18N)

本章译者:@nixil使用国际化支持(I18N)能够使你的应用根据用户所在地区的不同选择不同的语言。下面介绍如何在引用中使用国际化。只允许使用UTF-8Play只支持UTF-8一种字符编码.这是因为多编码会导致十分诡异难以处理的问题,所以我们决定仅支持一种。UTF-8编码涵盖了所有语言的所有字符。确认你的应用程序的每个角落都是使用UTF-8编码,也就是说:所有的源...

2015-04-22 11:06:00 142

转载 Play 中如何使用 Ajax

Play在内部使用了jQuery这个JavaScript库,让我们能够非常方便的进行Ajax操作。同时,为了能在JavaScript中方便地生成某个action对应的Url,Play还提供了一个jsAction标签,简化操作。配合jQuery使用jsAction标签在play的页面中,如果我们想取得某action对应的url,通常不会直接写出一个url,而是像Java那样...

2015-04-22 11:05:00 81

转载 Play!中使用HTTP异步编程

本章译者:@Sam Liu (译者未留下自己的主页,请Sam Liu见此文,加入群168013302联系‘大黄蜂@翻译play’)这一章主要讲解如何运用异步模式实现典型的长连接(long-polling)、流(streaming)和 推送方式(Comet-style) 的编程,以便于响应数以千万计的并发请求。延缓(Suspending) HTTP 请求Play主要是用于处理...

2015-04-22 11:04:00 94

转载 Asynchronous Jobs

Because Play is a web application framework, most of the application logic is done by controllers responding to HTTP requests.But sometimes you will need to execute some application logic outsi...

2015-04-22 11:03:00 98

转载 Play libs

Theplay.libspackage contains several useful libraries that will help you to achieve common programming tasks.Most of these libraries are simple helpers that are really straightforward to use:...

2015-04-22 11:02:00 112

转载 JPA persistence

Play provides a set of very useful helpers to simplify the management of your JPA entities.Notethat you can still go back to the plain JPA API whenever you want.Starting the JPA entity manag...

2015-04-22 11:01:00 132

转载 Validating HTTP data with Play

Validations ensure that the data has certain values or meets specific requirements. You can use validation to verify that your models are correct before saving them to the database, or use them d...

2015-04-22 11:00:00 97

空空如也

空空如也

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

TA关注的人

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