自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Sunface撩技术

大道至简,技术如歌,欢迎来到Sunface的博客,https://im.dev

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

原创 [Golang]Http get和post请求示例

golang要请求远程网页,可以使用net/http包中的client提供的方法实现。查看了官方网站有一些示例,没有太全面的例子,于是自己整理了一下。get请求get请求可以直接http.Get方法,非常简单。func httpGet() { resp, err := http.Get("http://www.01happy.com/demo/accept.php?id=1") if err

2015-08-27 21:30:55 4891

原创 Mysql5.7root密码设置

原创文章,转载请注明出处:服务器非业余研究http://blog.csdn.net/erlib 作者Sunface联系邮箱:cto@188.com 今天在安装mysql5.7.8的时候遇到一些问题,首当其冲便的是初始root密码的变更,特分享解决方法如下: 1.mysql5.7会生成一个初始化密码,而在之前的版本首次登陆不需要登录。 shell> cat /root/.mysql_secre

2015-08-26 15:18:31 7391 2

原创 [Erlang]好用的NIF外部库

原创文章,转载请注明出处:服务器非业余研究http://blog.csdn.net/erlib 作者Sunface联系邮箱:cto@188.com1.geohash  这个是处理经纬度的时候用的算法,很高效 https://github.com/treetopllc/geohash2.xml    处理xml https://github.com/processone/xml

2015-08-26 15:06:48 1899

转载 浅析Java内存模型

概述Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节。此处的变量是线程共享的,存在竞争问题的。Java内存模型规定了所有的变量都存储在主内存,每条线程还有自己的工作内存中保存了被该线程使用到的变量的主内存副本拷贝,线程对变量的所有操作(读取、赋值等),都必须在工作内存中进行,而不能直接读写主内存中的变量。(注:这里说的工作内存或

2015-08-20 10:28:38 1205

转载 抽象不仅仅局限于面向对象

软件设计,一直是一个非常抽象的,非常难懂的领域。 然而设计,并不是科学,虽然有评价标准,却没有是非对错。好的软件,就像是艺术品,闪耀着前人智慧的结晶。本文将探讨一下流行的软件设计,以及总结一下好的设计原则和方法。设计的基本原则一谈到软件设计,很多人都会讲,你要怎么怎么设计软件,怎么怎么才能面向对象,怎么样才能符合设计模式。没错,目前学软件设计,最初接触的可能就是面向对象的设计方法,23种设计模式。

2015-08-19 21:11:26 1332

转载 推荐系统架构

推荐系统(RecSys)作为电子商务中一个很火的应用,主要是为了帮助用户发现可能感兴趣的东西,这种就叫做个性化推荐系统;而广告商还可以利用结果将内容投放给可能会对它们感兴趣的用户,这就成了个性化广告。比较著名的推荐系统有亚马逊,被RWW(读写网)称为“推荐系统之王”,你从亚马逊买了一本书以后,会发现它会经常向你的邮箱发一些相关的书籍,这个有时比较恼人,呵呵;此外还要电影和视频网站,像YouTube

2015-08-19 20:48:13 5777 1

原创 [Erlang]如何进行http post请求

Post请求1> inets:start().ok2> http:request(post, {2> "http://www.google.com/",2> [], 2> "application/x-www-form-urlencoded",2> "hl=en&q=erlang&btnG=Google+Search&meta="2> },2> [], []).{ok,{{"HT

2015-08-19 18:38:05 3608

转载 [Erlang]使用recon从网页查看Erlang系统状态

0.需求分析Erlang最好的卖点之一就是提供了一个非常强大的shell来查看Node运行时的各种状态,可以进行各种各样的内部查看,在运行时调试和分析,热更新代码。 但是总有一些在生产环境下要慎用的状态查看函数。比如:1.在进程数达到10w级以上的Node调用erlang:processes()来得到所有的进程Pid.然后算长度blabla...;2. 当某个进程的信箱被堵塞了上万个消息队列时调

2015-08-13 20:25:49 2637

原创 分布式系统生成唯一主键

原创文章,转载请注明出处:服务器非业余研究http://blog.csdn.net/erlib 作者Sunface唯一ID在系统小的时候,随便整都可以,但是系统大了后呢?这个时候如果出现了问题,ID重构就是很大的困难,因此对于任何一个系统,从最初架构时就进行好唯一ID设计是非常重要的,twitter的snowflake就解决了这种需求,实现也还是很简单的,除去配置信息,核心代码就是毫秒级时间41位

2015-08-12 14:20:14 5376

原创 [Java]如何避免啰嗦的代码风格

Java是最流行的编程语言之一,但似乎并没有人喜欢使用它。好吧,实际上Java是一门还不错的编程语言,由于最近Java 8发布了,我决定来编辑一个如何能更好地使用Java的列表,这里面包括一些库,实践技巧以及工具。这篇文章在  GitHub上也有。你可以随时在上面贡献或者添加你自己的Java使用技巧或者最佳实践。编码风格结构体builder模式依赖注入避免null值不可变避免过多的工具类格式  文

2015-08-08 17:07:08 3523

转载 [Erlang]List结构和性能分析

Erlang里通过尾递归方式对列表中元素依次进行操作时,程序员们采用的方法总是先在尾递归中将处理后的元素加在已处理列表的头部,最后通过lists:reverse(List)来恢复原来次序。为什么不直接以自然顺序将表头元素加到已处理列表的尾部呢?这里面都是有故事的。先看两个函数:1234567891011121314151617-module(list_time).

2015-08-07 10:57:10 2844 1

原创 [Erlang]进程结构和性能分析

本文试图从进程角度解释Erlang之所以高效的原因,大部分资料来源于论文『Characterizing the Scalability of Erlang VM on Many-core Processors』,并且带有自己的理解,不当之处请多包涵。Erlang作为一门面向并发的语言(Concurrent Oriented Programming, COP),进程扮演着重要的作用,可以说Erlan

2015-08-07 10:45:01 4975 2

转载 [Erlang]Binary结构和性能分析

Erlang中封装binary数据指针时,尾部都会被贴上boxed标签(即最后2位为10B),指针所指向的内容首4字节(确切的说是sizeof(Eterm)字节)是一个header,从《Erlang数据类型的内部实现》一文中关于header的一段注释中可以看到:[cpp] view plaincopy/*  * HEADER representation:  *  *  aaaaaaaaaaaaa

2015-08-07 10:21:41 2358

转载 [Erlang]Lager如何防止日志过载

og 这个事, 说大不大说小又不小. 大点的, 可以用scribe flume 这样的系统去做, 小点的, 也就打印一个调试信息而已. 在Erlang 中, log 这事情确实比较伤, error_logger 是个单点, io:format 容易导致节点崩溃. 在开源社区, lager 算是使用比较广泛的一个, 然而, 同样不能完全避免单点的问题. 因为在lager 中, lager_event

2015-08-06 17:28:59 4292 1

转载 [Erlang]系统瓶颈检测

遇见recon 以来, 每次定位系统瓶颈, 总是能让我眼前一亮. 比如说, 定位非尾递归导致的内存暴涨, 定位引发CPU满载的进程.得心应手,每每额手称庆.recon 是ferd 大神 释出的一个 用于生产环境诊断Erlang 问题的一个工具, 不仅仅是对Erlang stdlib 接口的封装, 还有memory fragmentation 相关的函数.CPU 统计相关在ferd 大神放出的 Er

2015-08-06 17:04:20 1810

转载 [服务器架构]RESTful架构详解

1. 什么是REST  REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移。 它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主要编写者之一。 他在论文中提到:“我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强

2015-08-06 10:44:11 2575

空空如也

空空如也

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

TA关注的人

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