下面是一位前辈总结的程序员成长四个阶段,个人觉得非常有道理,你在哪个阶段?
阶段一:不知道自己不知道(Unconscious incompetence)
大学期间,我和老师做过一些小项目,自认为自己很牛,当时还去过一些公司面试做兼职,但是就是不知道为什么没有回复。那个时期的我,压根不知道自己不知道,还以为自己懂很多,现在想起自己以前就好笑,那个时候还算不上程序员,顶多只能算是个业余编程爱好者。
Just Do It
下面是一位前辈总结的程序员成长四个阶段,个人觉得非常有道理,你在哪个阶段?
阶段一:不知道自己不知道(Unconscious incompetence)
大学期间,我和老师做过一些小项目,自认为自己很牛,当时还去过一些公司面试做兼职,但是就是不知道为什么没有回复。那个时期的我,压根不知道自己不知道,还以为自己懂很多,现在想起自己以前就好笑,那个时候还算不上程序员,顶多只能算是个业余编程爱好者。
支付宝下单,openapi.alipay.com就是传说中的支付宝网关名。
所有的所有配置好以后,包括pid、appid以及RSA私钥、公钥和支付宝公钥。
支付系统采用了,dubbo+springMvc实现负载均衡集群(采用roundrobin轮询的方式),这里只部署了2台服务。假设这里是服务器A 192.168.1.180 服务器B 192.168.1.181
好了,开始下蛋了,服务器A下单成功,继续下单,轮询到B的时候事故出现了:
java.net.UnknownHostException: openapi.alipay.com
百度上给的思路是给hosts映射,vi /etc/hosts,我去里面已经有好几条映射了,淘宝的、微信的、网易的。
然而切换到服务器B/etc/hosts 下面,里面并没有所谓的映射。
仔细想了想,既然涉及到域名和IP,肯定与DNS解析有关系了, linux设置dns:
一、如何判断机器是否设置了正确的DNS ?
1、可以ping www.baidu.com 这样来进行测试,如果没有出IP 的,那代表没有设置好DNS。
2、可以检查一下DNS的设置文件,是否设置正确的DNS以及有没有设置到
二、如何在linux上面设置DNS ,下面我和大家详述一下
1、通过编辑/etc/resolv.conf文件,往里边添加内容
nameserver 202.96.128.86nameserver 202.96.128.166nameserver 8.8.8.8nameserver 8.8.4.4
然后保存退出,前面的是当地DNS,后面的是谷歌公开的DNS。
年底了,终于可以好好研究下ZooKeeper具体的适用场景了。
这里分享一个zk浏览工具,该工具除了能展示树形结构外,也能展示每个path的属性和数据,而且如果数据是文本的也可以进行编辑。
1.下载地址 https://issues.apache.org/jira/secure/attachment/12436620/ZooInspector.zip
百度网盘地址:http://pan.baidu.com/s/1jH8MxRC
2.运行 解压缩后双击 ZooInspector/build/zookeeper-dev-ZooInspector.jar后会出现以下界面:
好了,到这里你就可以自由的增删查改了。
一切需求都是来源于业务需要,前一阵子做了微信扫码支付,的确相对PC用户来说方便了很多。但是如果手机下单,你总不能让用户自己扫自己吧?查看了一下文档,微信还是支持公众号内网页端调起支付(前提你必须有微信服务号并且申请了微信支付功能)。
由于公司目前使用的支付项目是由JAVA代码开发的,但是微信官方给出的demo中是没有JAVA版本的,只有PHP版本(PHP果然是世界上最好的语言)。
开场白可以略过,我们来看一下微信给出的业务流程时序图:
微服务架构
单体架构能够很好地应对简单的业务系统。但是随着业务的扩张,功能的不断增加,单体架构面临着越来越多的挑战: