星辰大海

My Conquest Is the Sea of Stars.


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 站点地图

  • 搜索

【转载】如何评估一项技术是否值得长期投入

发表于 2020-07-04 | 分类于 成长&思考
本文字数: 5.4k | 阅读时长 ≈ 5 分钟

以下文章来源于阿里巴巴中间件,作者简锋

每个人的时间都是有限的,在有限的时间里选择一项值得投入的技术会变得尤为重要。

笔者从 2008 年开始工作到现在也有 12 个年头了,一路走来都在和数据打交道,做过很多大数据底层框架内核的开发(Hadoop,Pig,Hive,Tez,Spark),也做过多年上层数据计算框架(Livy, Zeppelin)以及数据应用开发,包括数据处理,数据分析以及机器学习。现在是 Apache Member 以及多个 Apache 项目的 PMC 。2018 年加入阿里巴巴实时计算团队专注在 Flink 的研发。

今天我想结合自己过去的职业经历来聊聊如何评估一项技术是否值得学习。我一直在大数据这个圈子,从最初的 Hadoop 到后来的 Hadoop 生态项目 Pig,Hive,Tez,然后又到新一代的计算引擎 Spark ,再到最近在做的 Flink ,大数据计算引擎贯穿我的整个职业生涯。我个人来说是比较幸运的,在每个阶段都在做比较火的技术,当时更多的是凭着自己的兴趣和直觉在选择技术类型。现在回过头来看我觉得需要从下面 3 个大的纬度来评估一项技术是否值得学习。

  1. 技术深度
  2. 生态广度
  3. 进化能力
阅读全文 »

【转载】饿了么4年 + 阿里2年:研发路上的一些总结与思考

发表于 2020-07-04 | 分类于 成长&思考
本文字数: 9.3k | 阅读时长 ≈ 8 分钟

以下文章来源于阿里巴巴中间件,作者石佳宁

最重要的是选择,最困难的是坚持。

我是在 2014 年入职饿了么,从前端和 PHP 一直做到后端架构和团队,从 2014 年到 2017 年陆续负责过公司客服、销售、代理商、支付、清结算、订单这些业务的产研与团队;2018 年从业务研发团队抽身,6 个人组起一个小组投身机器学习,试图结合实际的业务场景通过技术改造业务;2019 年回归到平台(中台)研发,负责交易、金融、营销三个中台的研发和团队工作。基于我在饿了么4年和阿里巴巴 2 年研发经历,从技术、业务、管理和架构层面分享一些我的思考。

技术层面

对开发同学而言,技术是立身之本,虽然往往面试造火箭入职拧螺丝,但不可否认的是,技术就是你从业的的基石。不管是基本的动手能力还是问题分析能力,包括你的思维逻辑乃至对事物认知的能力,技术思维都会时刻影响你。最明显的影响就是当你面对无数个问题的钉子时,技术是不是你最顺手的那把锤子。

技术上我比较关注的几个层面:

  • 基本功(语言、编码这个层面,主要是动手能力)
  • 大型分布式系统的实战经验(RPC、SOA、MySQL、Redis、MQ)
  • 项目( DB 设计、API契约、DDD抽象、链路设计、项目风险把控)
  • 稳定性(可用 & 资损)

阅读全文 »

【转载】高并发,你真的理解透彻了吗?

发表于 2020-07-04 | 分类于 成长&思考
本文字数: 8.2k | 阅读时长 ≈ 7 分钟

以下文章来源于IT人的职场进阶 ,作者骆俊武

高并发,几乎是每个程序员都想拥有的经验。原因很简单:随着流量变大,会遇到各种各样的技术问题,比如接口响应超时、CPU load升高、GC频繁、死锁、大数据量存储等等,这些问题能推动我们在技术深度上不断精进。

在过往的面试中,如果候选人做过高并发的项目,我通常会让对方谈谈对于高并发的理解,但是能系统性地回答好此问题的人并不多,大概分成这样几类:

1、对数据化的指标没有概念:不清楚选择什么样的指标来衡量高并发系统?分不清并发量和QPS,甚至不知道自己系统的总用户量、活跃用户量,平峰和高峰时的QPS和TPS等关键数据。

2、设计了一些方案,但是细节掌握不透彻:讲不出该方案要关注的技术点和可能带来的副作用。比如读性能有瓶颈会引入缓存,但是忽视了缓存命中率、热点key、数据一致性等问题。

3、理解片面,把高并发设计等同于性能优化:大谈并发编程、多级缓存、异步化、水平扩容,却忽视高可用设计、服务治理和运维保障。

4、掌握大方案,却忽视最基本的东西:能讲清楚垂直分层、水平分区、缓存等大思路,却没意识去分析数据结构是否合理,算法是否高效,没想过从最根本的IO和计算两个维度去做细节优化。

这篇文章,我想结合自己的高并发项目经验,系统性地总结下高并发需要掌握的知识和实践思路,希望对你有所帮助。内容分成以下3个部分:

  • 如何理解高并发?
  • 高并发系统设计的目标是什么?
  • 高并发的实践方案有哪些?
阅读全文 »

在docker-compose环境下以ws+tls方式一键搭建v2ray(So easy)

发表于 2020-06-12
本文字数: 6.5k | 阅读时长 ≈ 6 分钟
文章转载自在docker-compose环境下以ws+tls方式一键搭建v2ray(So easy),根据实际搭建情况,略有修改 通常以ws+tls方式搭建v2ray的步骤比较繁琐,比如安装v2ray、安装nginx、申请证书等等。那有没有比较简便的方法自动完成这一系列工作呢?答案就在下面。 在docker-compose环境下以ws+tls方式搭建v2ray的具体步骤如下: 一、环境准备1.获取域名及VPS 第一步你应该先拥有一个VPS和一个域名,获取VPS和域名的方法如下: 免费域名注册: 免费域名申请;; VPS推荐搬瓦工,支持支付宝付款,注册地址:注册搬瓦工,注册教程:史上最详细 ...
阅读全文 »

Nginx启用Let’s Encrypt SSL证书

发表于 2020-06-07 | 更新于 2020-06-12
本文字数: 17k | 阅读时长 ≈ 15 分钟
文章转载自Nginx启用Let’s Encrypt SSL证书,根据实际搭建情况,略有修改 Let’ s Encrypt 是一个免费的 SSL/TLS 证书发行机构, 证书有效期为90天, 到期前30内可续期,因此不需要担心费用问题。 服务器环境: nginx-1.10.1 php-7.0.4 mariadb-10.1.13 启用证书的主要过程包括:客户端安装、获取证书、配置Nginx、证书自动续期等几个方面。 客户端下载Let’ s Encrypt客户端现已更名为certbot,客户端的地址为https://github.com/certbot/certbot/releases 。 1 ...
阅读全文 »

centos7基于nginx搭建v2ray服务端配置vmess+tls+websocket完全手册

发表于 2020-06-07 | 更新于 2020-06-12 | 分类于 LINUX
本文字数: 24k | 阅读时长 ≈ 21 分钟

文章转载自centos7基于nginx搭建v2ray服务端配置vmess+tls+websocket完全手册,根据实际搭建情况,略有修改

一直都是使用自建shadowsocks科学上网,服务很稳定,虽然v2ray出现了很久,但是没花心思研究两者之间有什么区别。后来无意间查询自己手机的上网记录,出现下图信息,我感觉还是让上网更隐蔽一点更好。

注意:使用下文的方法出现rejected v2ray.com/core/proxy/vmess/encoding: invalid user,搞不通,有空再验证试试

阅读全文 »

Java开发必须掌握的线上问题排查命令 - 常见命令、JPS、JSTACK、JMAP、JSTAT、JHAT、JINFO、JAVAP等

发表于 2020-06-06 | 分类于 JAVA
本文字数: 164k | 阅读时长 ≈ 2:29

本文转载自java命令学习系列,文章内容略有调整。

Java开发必须掌握的线上问题排查命令

作为一个合格的开发人员,不仅要能写得一手还代码,还有一项很重要的技能就是排查问题。这里提到的排查问题不仅仅是在coding的过程中debug等,还包括的就是线上问题的排查。由于在生产环境中,一般没办法debug(其实有些问题,debug也白扯。。。),所以我们需要借助一些常用命令来查看运行时的具体情况,这些运行时信息包括但不限于运行日志、异常堆栈、堆使用情况、GC情况、JVM参数情况、线程情况等。

给一个系统定位问题的时候,知识、经验是关键,数据是依据,工具是运用知识处理数据的手段。为了便于我们排查和解决问题,Sun公司为我们提供了一些常用命令。这些命令一般都是jdk/lib/tools.jar中类库的一层薄包装。随着JVM的安装一起被安装到机器中,在bin目录中。下面就来认识一下这些命令以及具体使用方式。

阅读全文 »

Linux常用命令整理

发表于 2020-06-06 | 分类于 LINUX
本文字数: 8.3k | 阅读时长 ≈ 8 分钟

本文并不会对所有命令进行详细讲解,只给出常见用法和解释。具体用法可以使用--help查看帮助或者直接通过google搜索学习。

查找文件

find / -name filename.txt 根据名称查找/目录下的filename.txt文件。

find . -name "*.xml" 递归查找所有的xml文件

find . -name "*.xml" |xargs grep "hello world" 递归查找所有文件内容中包含hello world的xml文件

grep -H 'spring' *.xml 查找所以有的包含spring的xml文件

find ./ -size 0 | xargs rm -f & 删除文件大小为零的文件

ls -l | grep '.jar' 查找当前目录中的所有jar文件

grep 'test' d* 显示所有以d开头的文件中包含test的行。

grep 'test' aa bb cc 显示在aa,bb,cc文件中匹配test的行。

grep '[a-z]\{5\}' aa 显示所有包含每个字符串至少有5个连续小写字符的字符串的行。

阅读全文 »

【转载】Nginx反向代理,负载均衡,redis session共享,keepalived高可用

发表于 2020-03-23 | 更新于 2020-06-06 | 分类于 NGINX
本文字数: 258k | 阅读时长 ≈ 3:55

来自:MrLinFeng - 博客园 链接:www.cnblogs.com/mrlinfeng/p/6146866.html

使用的资源:

nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换。

tomcat服务器两台,由nginx进行反向代理和负载均衡,此处可搭建服务器集群。

redis服务器一台,用于session的分离共享。

nginx主服务器:192.168.50.133

nginx备服务器:192.168.50.135

tomcat项目服务器1:192.168.50.137

tomcat项目服务器2:192.168.50.139

redis服务器:192.168.50.140

注意访问时需要配置防火墙规则,或者关闭防火墙

阅读全文 »

【转载】20条Linux命令面试问答

发表于 2020-03-23 | 更新于 2020-03-24 | 分类于 LINUX
本文字数: 6.4k | 阅读时长 ≈ 6 分钟

版权声明:本文是Linux中国翻译,已按转载要求注明信息。
原文:http://www.linuxtechi.com/20-linux-commands-interview-questions-answers/
作者: Pradeep Kumar
译文:LCTT http://linux.cn/article-4790-1.html
译者: ZTinoZ

问:1 如何查看当前的Linux服务器的运行级别?

答: ‘who -r’ 和 ‘runlevel’ 命令可以用来查看当前的Linux服务器的运行级别。

问:2 如何查看Linux的默认网关?

答: 用 “route -n” 和 “netstat -nr” 命令,我们可以查看默认网关。除了默认的网关信息,这两个命令还可以显示当前的路由表。

阅读全文 »
12…6
Vincent

Vincent

The King is dead, long live the King!

55 日志
23 分类
72 标签
RSS
GitHub E-Mail
© 2020 Vincent | 629k | 9:31
由 Hexo 强力驱动 v3.9.0
|
主题 — NexT.Muse v6.3.0