入职一周多的感受,领悟 上上周4从携程离职,7月2号加入了字节跳动大家庭。来这边还是 做server,按照老大的话就是说给大家服务,哈哈。这边主要的业务线是 抖音,musical.ly,tik tok .都是很年轻的产品,很年轻的血液注入到了现在的互联网中。这边大家都是mac办公,编码,整体给人 很geek的感觉,捡起了我以前倒腾mac的劲,开始了命令行之旅。由于是社招,很多时候还是有压力的,虽然大家 都让 把问题抛出...
Golang处理JSON(一)--- 编码 转自:https://www.jianshu.com/p/f3c2105bd06bJSONhttp的交互的生命周期包含请求和响应。前面我们介绍了很多关于发起请求,处理请求的内容。现在该聊一聊返回响应内容了。对于web服务的响应,以前常见的响应是返回服务端渲染的模板。浏览器只要展示模板即可。随着Restful风格的api出现,已经前后端分离,更多的返回格式是json字串。本节我们将讨论在golang...
基于Redis的分布式锁到底安全吗(上)? 大牛博文链接:http://zhangtielei.com/posts/blog-redlock-reasoning.html 网上有关Redis分布式锁的文章可谓多如牛毛了,不信的话你可以拿关键词“Redis 分布式锁”随便到哪个搜索引擎上去搜索一下就知道了。这些文章的思路大体相近,给出的实现算法也看似合乎逻辑,但当我们着手去实现它们的时候,却发现如果你越是仔细推
跳表SkipList的原理和实现 原文地址:http://kenby.iteye.com/blog/1187303 ,http://imtinx.iteye.com/blog/1291165为什么选择跳表目前经常使用的平衡数据结构有:B树,红黑树,AVL树,Splay Tree, Treep等。 想象一下,给你一张草稿纸,一只笔,一个编辑器,你能立即实现一颗红黑树,或者AVL树出来吗? 很难吧,这需要时间,要考
Zookeeper 初体验之——JAVA API 初探 简介Apache Zookeeper 是由 Apache Hadoop 的 Zookeeper 子项目发展而来,现在已经成为了 Apache 的顶级项目。Zookeeper 为分布式系统提供了高效可靠且易于使用的协同服务,它可以为分布式应用提供相当多的服务,诸如统一命名服务,配置管理,状态同步和组服务等。 Zookeeper 接口简单,开发人员不必过多地纠结在分布式系统编程难于处理的同步和
基于zookeeper实现分布式锁 原文链接(http://blog.csdn.net/sunfeizhi/article/details/51926396)一、分布式锁介绍 分布式锁主要用于在分布式环境中保护跨进程、跨主机、跨网络的共享资源实现互斥访问,以达到保证数据的一致性。二、架构介绍 在介绍使用Zookeeper实现分布式锁之前,首先看当前的
java 多线程 CountDownLatch用法 原文链接(http://zk1878.iteye.com/blog/1002652)CountDownLatch,一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。主要方法 public CountDownLatch(int count); public void countDown(); public void aw
聊聊并发——Fork/Join框架介绍 (转自:http://www.infoq.com/cn/articles/fork-join-introduction)1. 什么是Fork/Join框架Fork/Join框架是Java7提供了的一个用于并行执行任务的框架, 是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。我们再通过Fork和Join这两个单词来理解下Fork/Join框
关于生产者-消费者-订阅者模式的那些事 生产者/消费者模式简介用来干嘛的?生产者/消费者模式的产生主要目的就是为了解决非同步的生产与消费之间的问题。什么是非同步呢?比如我刚刚生产了某个产品,而此时你正在打游戏,没空来取,要打完游戏来取,这就导致了我生产产品和你取产品是两个非同步的动作,你不知道我什么时候生产完产品,而我也不知道你什么时候来取。而生产者/消费者模式就是解决这个非同步问题的,因为肯
聊聊并发——生产者消费者模式 (转自:http://www.infoq.com/cn/articles/producers-and-consumers-mode?utm_source=infoq&utm_campaign=user_page&utm_medium=link)在并发编程中使用生产者和消费者模式能够解决绝大多数并发问题。该模式通过平衡生产线程和消费线程的工作能力来提高程序的整体处理数据的速度。为什么
Mysql 会导致锁表的语法 (转自:http://blog.csdn.net/yonghumingbuzhidao/article/details/8330795)最近再找一些MySQL锁表原因,整理出来一部分sql语句会锁表的,方便查阅,整理的不是很全,都是工作中碰到的,会持续更新笔者能力有限,如果有不正确的,或者不到位的地方,还请大家指出来,方便你我,方便大家。此测试环境mysql 5.5 基于inn
Java实现SOAP协议 Java实现SOAP协议(转自:http://blog.csdn.net/bestlove12345/article/details/51849631) SOAP是把基于HTTP的WEB技术与XML的灵活性和可扩展性组合在了一起。准备:1. 准备一个web server。Tomcat 下载地址 http://tomcat.apache.org/本例使
dubbo-admin项目部署 附件为解压后的dubbo-admin.war 包,版本为2.5.4,直接将他解压后替换 tomcat/webapps 下的ROOT的文件夹,然后需要修改ROOT/WEB-INF文件夹下的dubbo.properties,dubbo.registry.address=zookeeper://127.0.0.1:2181//这里换为你自己的地址和端口dubbo.admin.root.passwo
单一使用Mybatis, SqlSession 注意项 这是读取mybatis配置得到SqlSessionFactory的代码块public static org.apache.ibatis.session.SqlSessionFactory sqlSessionFactory; static { String resource = "mybatis-config.xml"; InputStream inpu
shell小白 想玩自动化部署,无密码ssh 登录远程服务器,执行scp命令传送war包 并重启tomcat。 一个演示demo,首先scp命令 发送 test.clss 到远程服务器登录目录(可以指定目录,真实环境应该指定到tomcat安装目录的webapps 文件夹目录下),并会ssh连接登录到服务器。如果没有配置无密码shh登录会要求你输入两次密码。#!/bin/shcd /usr/local/software/apache-tomcat-7.0.76/binbash ./shutdown.
记录一次操作git 的愚蠢行为(本地代码只 git add 过,没有 commit ,push 过,然后版本回退 导致本地代码丢失) 这周三在公司pull了远程仓库的最新代码,发现代码编译后报错了。当时不知道没睡醒还是什么没想到 git log 去查看新版本的commiter,然后去交流请教问题.然后自己想到了本地版本回退,回到到上一个编译没有报错的版本,但git 里面水太深了, 因为我本地也有自己的代码,并且一次没有提交过,回退成功后发现确实没有报错了,但是突然发现我自己的代码全没了,当时吓出汗来了。然后马上google 希望