自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 为什么好多公司的开发语言从C#变成了Java?

今天来谈谈为什么好多公司的开发语言慢慢从C#变成了Java了。其实也是希望大家能够讨论一下,如果是讨论的话我们就会建立一个基本的讨论标准,所以这里主要讨论的标准有两个:公司定义:我们定义的是互联网公司,TO-C的那种,不是to-B的,也不是软件公司,因为软件公司这种并发和QPS一个请求走9次IO也是正常的,尽管我们不应该这么做,但是还是有人这么做,因为他们主要关注点是能完成一些复杂业务;项 ...

2018-09-29 17:36:49 14042 14

原创 作为最流行的编程语言之一,谁又将会杀死 Java?

Java最流行的编程语言之一2017年9月的TIOBE指数将Java列为当月较为流行的语言。其实,它已经名列前三甲很多年了。Stack Overflow Developer Survey 2017将Java列为继Javascript和SQL之后第三常用的编程语言(实际上,过去四年它都保持着这名次)。不说这些结果是如何产生的,亦或者这结果是否反映了现实世界中的情况,我们不能否认的是,Java在...

2018-09-28 15:26:13 2315

原创 如何优雅的使用和理解线程池

前言平时接触过多线程开发的童鞋应该都或多或少了解过线程池,之前发布的《阿里巴巴 Java 手册》里也有一条:可见线程池的重要性。简单来说使用线程池有以下几个目的:线程是稀缺资源,不能频繁的创建。解耦作用;线程的创建于执行完全分开,方便维护。应当将其放入一个池子中,可以给其他任务进行复用。线程池原理谈到线程池就会想到池化技术,其中最核心的思想就是把宝贵的资源放到一个池子中;每次使用...

2018-09-27 15:52:11 198

原创 月入多少的java程序员才可以养得起成都小甜甜?

抖音上一个#最好养活小姐姐#成都小甜甜火了,原因是在“成都最街坊”话题中,视频里小姐姐的回答温暖了千万网友。“你觉得男人一个月多少工资可以养活你?”“养活我啊,能带我吃饭就好。”这一率性真诚的回答,让小甜甜成为继温婉后的新竞“抖音女神”完胜戏精网红。有人疯狂寻找她的抖音号,有人表示要去成都春熙路见见小姐姐,甚至在朋友圈秀出了自己的请假条、辞职信。眼看小姐姐就要被抢走了,程序员的你,如何在...

2018-09-26 15:29:45 438

原创 缓存穿透、并发和雪崩那些事

0 题记缓存穿透、缓存并发和缓存雪崩是常见的由于并发量大而导致的缓存问题,本文讲解其产生原因和解决方案。缓存穿透通常是由恶意攻击或者无意造成的;缓存并发是由设计不足造成的;缓存雪崩是由缓存同时失效造成的,三种问题都比较典型,也是难以防范和解决的。本节给出通用的解决方案,以供在缓存设计的过程中参考和使用。1 缓存穿透缓存穿透指的是使用不存在的key进行大量的高并发查询,这导致缓存无法命中,每...

2018-09-25 21:36:21 134

原创 别让自己变为一个废掉的程序猿

一个人开始废掉的标志是什么?有人说是无所事事,终日啃老;有人说是沉溺游戏,卧床不起;可你有没有想过,或许下一个废掉的人,刚好是看似勤奋忙碌的你。一,沉浸在舒适区里,每天做着无效的努力前几天半夜接到老友的电话,一个三十多岁的男人,蹲在自家黑漆漆的车库里抱头大哭。那是他失业的第一天,早晨吃完老婆做的早餐,把孩子送到学校,假装去上班,其实不过是在公园呆坐了一天。晚上回来的时候,看着窗口亮着的灯,...

2018-09-25 20:38:49 95

原创 Nginx+Tomcat 动静分离实现负载均衡

0.前期准备使用Debian环境。安装Nginx(默认安装),一个web项目,安装tomcat(默认安装)等。1.一份Nginx.conf配置文件Nginx+Tomcat 动静分离实现负载均衡Nginx+Tomcat 动静分离实现负载均衡基本配置这个文件,就可以实现负载了。但是里面的各种关系要了解就比较麻烦了。这篇博客,也不是教学篇,是记录一下,方便以后自己看了。2.基础讲解现在...

2018-09-25 17:27:23 798

原创 如何搭建高可用redis架构?

1 题记Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。如今,互联网业务的数据正以更快的速度在增长,数据类型越来越丰富,这对数据处理的速度和能力提出了更高要求。Redis 是一种开源的内存非关系型数据库,给开发人员带来的体验是颠覆性的。在自始至终的设计过程中,都充分考虑高性能,这使得 Redis...

2018-09-22 15:26:19 153

原创 一个思维习惯,让你成为架构师

程序员的迷茫不仅仅是面对技术繁杂的无力感,更重要的是因为长期埋没于软件 世界的浩大的分工体系中,无法看清从业务到软件架构的价值链条,无法清楚定位自 己在分工体系的位置,处理不好自身与技术、业务的关系所致。很多程序员打心底不喜欢业务,这一点我曾经也经历过,我更宁愿从事框架工 具、技术组件研究的相关事情。我有个朋友经常吐槽我说:”你们天天加班加点写了 那么多代码,然后呢?有改变什么吗?还不是写出了一...

2018-09-21 16:50:57 847

原创 如何在面试中介绍自己的项目经验

在面试时,经过寒暄后,一般面试官会让介绍项目经验 。常见的问法是,说下你最近的(或最拿得出手的)一个项目。根据我们的面试经验,发现有不少候选人对此没准备,说起来磕磕巴巴,甚至有人说出项目经验从时间段或技术等方面和简历上的不匹配,这样就会造成如下的后果。第一印象就不好了,至少会感觉该候选人表述能力不强。一般来说,面试官会根据候选人介绍的项目背景来提问题,假设面试时会问10个问题,那么至少有5个...

2018-09-20 16:56:18 391

原创 优雅实现延时任务之Redis篇

什么是延时任务延时任务,顾名思义,就是延迟一段时间后才执行的任务。举个例子,假设我们有个发布资讯的功能,运营需要在每天早上7点准时发布资讯,但是早上7点大家都还没上班,这个时候就可以使用延时任务来实现资讯的延时发布了。只要在前一天下班前指定第二天要发送资讯的时间,到了第二天指定的时间点资讯就能准时发出去了。如果大家有运营过公众号,就会知道公众号后台也有文章定时发送的功能。总而言之,延时任务的使用...

2018-09-19 15:50:23 2536

原创 MySQL常用30种SQL查询语句优化方法

1、应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。2、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。3、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描。如:select id from t where num is nul...

2018-09-18 19:46:00 141

原创 程序员如何通过代码为女票挑衣服

少部分高收入程序员能够进一步成长为公司高管,收入上可以实现财务自由,但是并不是很多人都可以成为公司高管的,毕竟这只是少数,但是如果作为公司高管,那么压力不是一般人能想象的。谈起程序员都知道,这个是富得流油的行业,但是你却很少见到程序员来炫富,为何呢?为什么程序员不炫富? 网友: 即使他们炫, 你也看不懂!大家都知道,程序员是一个比较辛苦的工作,认为程序员家境不算好,不然他们也不会选择这一行了,...

2018-09-18 15:35:14 681

原创 史上最难的一道Java面试题:分析篇

无意中了解到如下题目,觉得蛮好。题目如下: 该程序的输出结果?程序输出结果 考察知识点synchronize实例锁。并发下的内存可见性。在java中,多线程的程序最难理解、调试,很多时候执行结果并不像我们想象的那样执行。所以在java多线程特别难,依稀记得大学的时候考c语言二级的时候,里面的题目是什么++和很多其他优先级的符合在一起问最后的输出结果,这类题目就想考一...

2018-09-17 15:10:01 264 1

原创 两年摸爬滚打 Spring Boot,总结了这 16 条最佳实践

Spring Boot是最流行的用于开发微服务的Java框架。在本文中,我将与你分享自2016年以来我在专业开发中使用Spring Boot所采用的最佳实践。这些内容是基于我的个人经验和一些熟知的Spring Boot专家的文章。在本文中,我将重点介绍Spring Boot特有的实践(大多数时候,也适用于Spring项目)。以下依次列出了最佳实践,排名不分先后。1、使用自定义BOM来维护第...

2018-09-16 15:22:50 1530

原创 又一个程序员倒下-程序员防猝死指南

就在上个月,这个视频在技术群里疯传,据传是一位24岁的程序员在工作中猝死,在为他惋惜的同时,希望借助这个事情来为大家的健康敲一个响钟。视频链接:http://tieba.baidu.com/p/5857257985?qq-pf-to=pcqq.group 程序员在其职业生涯中,健康问题尤为突出。但是大部分程序员只顾码字,却往往忽略了自身的健康问题。这或许是因为写代码太入神,也或许是因为来...

2018-09-14 15:24:09 1633

原创 阿里P9谈程序员——程序员的"青春饭"

导读:你是否曾经认真思考过——毕业3-5年、10年,乃至更久后,我们希望成为什么样的人?作为一名技术人,我们要如何规划自己的职业发展生涯?网上热议的“35岁中年危机”,本质上又因什么而焦虑?今天,阿里资深技术专家毗卢,将带来自己的思考与理解,希望对大家有所启发。作者毗卢:近期,我与团队同学探讨了职业发展规划的问题。有些同学表示希望后续能进一步在技术领域(或管理方向)有进一步的积累;有的同学表示...

2018-09-13 15:07:30 170

原创 北上深程序猿纷纷“入杭”!杭州工程师人才净流入率全国第一

在继北京西二旗程序员,上海张江码农,深圳南山技术男后,中国工程师群体又多了一个冉冉升起的门派:杭派工程师。据猎聘《2018中国重点城市工程师大数据与调研报告》显示,2017年一季度到2018年二季度期间,互联网工程师人才净流入分布情况,杭州以12.46%的流入率排名第一。 在流入杭州的工程师中,来自上海的最多,达到23.56%;其次是北京和深圳,占比依次为17.21%和6.91%。这意味...

2018-09-12 20:50:38 852

原创 从程序员之死看 IT 人士如何摆脱低情商诅咒

(1)IT公司的创业者苏享茂忽然跳楼自杀了,自杀前,他留下几万字的文字记录、遗书,并且在自己开发的软件界面上,设置了弹出页面,控诉是恶毒前妻逼死了自己。生命戛然而止,留给亲人痛苦,留给世人震惊。求生是人类的本能,可是求死的人,在跳的那一瞬间,他们在想什么?人在什么状况下,会选择自己结束自己的生命?人都有趋利避害的本能。为了能停止痛苦,人们可能去做那唯一的解脱之法:死。只有一了百...

2018-09-11 19:40:59 236

原创 爱上 Java 的10 大理由,Python 弱爆了!

Java和JVM已经存在了很长一段时间了,基于这个事实,一些程序员开始将很多事情视为理所当然。今天我们就来说一说“Java之所以能够成为并将继续是软件项目领先平台”的十大理由。1.高性能JVMJava最初的开发目的“一次编写到处运行”,并由虚拟机提供运行平台。点击这里查看JVM内存模型详解。没有JVM,Java就必须遵循Ruby和Python的步伐——在痛苦中进一步提高其便携性。随着物...

2018-09-10 17:55:03 213

原创 作为一名Java程序员,我为何不在生产项目中转向Go?

自Google在2009年发布Go语言的第一个正式版之后,这门语言就以出色的语言特性受到大家的追捧,尤其是在需要高并发的场景下,大家都会想到是不是该用Go。随后,在国内涌现出了一批以七牛为代表的使用Go作为主要语言的团队,而许世伟大神本人也在各种场合下极力推动Go在国内的发展,于是在这种大环境下,中国的Go开发者群体逐渐超越了其他地区。那么问题来了,业余时间好学是一回事,真正要将一个新东西运用...

2018-09-09 16:35:11 19207 3

原创 我为什么放弃了 Python ,选择了 Go?

根据维基百科数据统计(https://en.wikipedia.org/wiki/List_of_programming_languages),一共有 600 余种不同的编程语言。对于五花八门的开发语言,每门语言都有自己的优缺点。而励志成为一名博学多广的开发者,术业也有专攻,怎奈何也不会学习完百余种语言。在这些语言中,Java 作为 22 年的常青藤,无论是新爆发的 Kotlin 还是 C、C...

2018-09-07 17:35:35 1878

原创 Java高级特性入门——泛型、反射和注解

本次的分享主要围绕以下三个方面:一、泛型介绍二、反射机制三、注解的使用一、泛型介绍在日常编程的过程中,泛型在这三个特性之中使用频率是最高的。”泛型”一词中的泛字可以理解为泛化的意思,即由具体的、个别的扩大为一般的。Oracle对泛型的官方定义是:泛型类型是通过类型参数化的泛型类或接口。一言以蔽之,泛型就是通过类型参数化,来解决程序的通用性设计和实现的若干问题。 Java泛型是...

2018-09-06 21:10:03 316

原创 activemq和kafka有什么区别?

这是两种截然不同的mq。Active MQ被称为“传统”mq。所谓“传统”是指,他要支持一些标准接口,比如AMQP, STOMP等需要维护consumer的状态。即当前consumer读到哪个数据了,是active mq来维护的。active mq最早用来做企业级别的系统整合。要支持所谓的“企业级队列模式“,但请原谅我搞到最后也没理解这个企业级到底怎么企业级了,也许现在的大多数企业早已不像10多年...

2018-09-05 21:00:32 6335

原创 微服务(Microservice)那点些大事

Spring Boot 是构建单个微服务应用的理想选择,但是我们还需要以某种方式将它们互相联系起来。这就是 Spring Cloud Netflix 所要解决的问题。Netflix 它提供了各种组件,比如:Eureka服务发现与Ribbon客户端负载均衡的结合,为内部“微服务”提供通信支持。 本章介绍如何通过使用 Netflix Zuul 实现一个微服务API Gateway 来实现简单代理转发和...

2018-09-04 21:48:36 1552

空空如也

空空如也

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

TA关注的人

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