获得徽章 0
- 盘点|阿里巴巴高效&优雅的开发者工具
Java 线上诊断工具 Arthas
Arthas 阿里巴巴2018年9月开源的一款Java线上诊断工具。
工具的使用场景:
这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!
是否有一个全局视角来查看系统的运行状况?
有什么办法可以监控到JVM的实时运行状态? Arthas支持JDK 6+,支持Linux/Mac/Windows,采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。
使用教程:
基础教程
进阶教程
获取方式:(免费)
开源地址展开评论点赞 - 这6个编程语言排行榜,据说全都知道的人不足1% | 年终榜单大盘点
1、TIOBE
TIOBE可能是开发者们最熟悉和最权威的编程语言排行榜之一了,它每个月都会更新,数据来源全面,能准确地反映各类语言的热门程度。
2、PYPL
PYPL主要根据Google上相关的搜索频率进行统计排名,它不仅有编程语言的排名情况,也有IDE、ODE(Online IDE)和数据库排行。它的数据来源是Google Trends,这意味着某种语言在Google中搜索频率越高,该语言就越受欢迎。
3、IEEE Spectrum
IEEE Spectrum 是 IEEE(美国电气电子工程师学会)的旗舰网站,是全球最大的致力于工程与应用科技的专业组织。IEEE Spectrum被国人所熟知是因其中文版刊物《科技纵览》。
4、RedMonk
RedMonk是每季度更新的榜单,它基于某语言在GitHub上的项目数量,和在Stack Overflow的标签出现次数来统计,而这两个社区也是开源和技术讨论的权威数据源。
5、Stack Overflow
每年Stack OverFlow都会让开发者参与一项调查,统计开发者在Stack OverFlow的各项分布,包括国籍、工龄、受教育程度。同时Stack OverFlow也会统计站内最受欢迎的编程语言,有趣的是它还统计了开发者们最讨厌和最想学习或使用的语言,一起来看看吧!
6、GitHub Octoverse
GitHub是知名的开源社区,在开发者人群中应该是无人不知无人不晓的。因其大规模的开源项目和开发者用户,GitHub也掌握了相当体量的统计数据。展开评论点赞 - SQL开发与数据库管理笔记
一、开发管理篇
1.按姓氏笔画排序
Select * From TableName
Order By CustomerName
Collate Chinese_PRC_Stroke_ci_as
2.数据库加密:
select encrypt('原始密码')
select pwdencrypt('原始密码')
select pwdcompare('原始密码','加密后密码') = 1--相同;否则不相同
select pwdencrypt('原始密码')
select pwdcompare('原始密码','加密后密码') = 1--相同;否则不相同3.取回表中字段:
declare @list varchar(1000),
@sql nvarchar(1000)
select @list=@list+','+b.name
from sysobjects a,syscolumns b
where a.id=b.id and a.name='表A'
set @sql='select '+right(@list,len(@list)-1)+'
from 表A'
exec (@sql)
4.查看硬盘分区:
EXEC master..xp_fixeddrives
5.比较A,B表是否相等:
if (select checksum_agg(binary_checksum(*)) from A)
=
(select checksum_agg(binary_checksum(*)) from B)
print '相等'
else
print '不相等'展开评论点赞 - 闲鱼Flutter互动引擎系列——整体设计篇
对标Unity设计,游戏系统有下列四大元素:
Game:游戏类,负责整个游戏的管理,Scene的加载管理以及各子系统管理与调度。
Scene:游戏场景类,负责游戏场景中各游戏对象的管理。
GameObject:游戏对象类,游戏世界中游戏对象的最小单位,游戏世界中的任何物体都是GameObject。
Component:游戏组件类,表示游戏对象的能力属性,比如SpriteComponent表示精灵组件,表示绘制精灵的能力。
GameObject通过组合Component的形式来让自己拥有各种能力,不同的组合让GameObject相互之间不一样展开评论点赞 - Go 开发关键技术指南 | Go 面向失败编程
Go 有 Defer, Panic, and Recover。其中 defer 一般用在资源释放或者捕获 panic。而 panic 是中止正常的执行流程,执行所有的 defer,返回调用函数继续 panic;主动调用 panic 函数,还有些运行时错误都会进入 panic 过程。最后 recover 是在 panic 时获取控制权,进入正常的执行逻辑。
注意 recover 只有在 defer 函数中才有用,在 defer 的函数调用的函数中 recover 不起作用,如下实例代码不会 recover:
go
package main
import "fmt"
func main() {
f := func() {
if r := recover(); r != nil {
fmt.Println(r)
}
}
defer func() {
f()
} ()
panic("ok")
}展开评论点赞 - 日处理数据量超10亿:友信金服基于Flink构建实时用户画像系统的实践
首先其流式计算属于真正意义上的单条处理,即每一条数据都会触发计算。在这一点上明显与 Spark 的微批流式处理方式不同。其次,Flink 的容错机制较为轻量,对吞吐量影响较小,使得 Flink 可以达到很高的吞吐量。最后 Flink 还拥有易用性高,部署简单等优势。相比之下我们最终决定采用基于 Flink 的架构方案。展开赞过评论1 - 代码覆盖率工具-jacoco环境搭建分享
Web多个服务在docker中启动,服务之间存在依赖关系,启动端口号以及依赖的镜像关系都配置在docker-compse.yml文件中。需要借助代码覆盖率工具,对后端Java代码进行覆盖率统计。
环境搭建理想目标是,开启覆盖率统计工具后,进行API、Web GUI、手工测试和单元测试,都可以统计到覆盖率,且生成直观的报告,可随时查看代码覆盖率进度,清晰解析每行代码覆盖情况。
调研各代码覆盖率工具后,最终选定Jacoco进行代码覆盖率统计,理由如下:
1.Jacoco功能满足上述代码覆盖率环境的终极目标;
2.可与jenkins集成;
3.新版本的Jacoco也支持kotlin的代码统计;
4.目前工具在持续更新中。展开评论点赞 - Zookeeper学习分享
基本功能介绍
create [-s] [-e] path data acl
-s :创建一个顺序节点
-e :创建一个临时节点;在于客户端断连时,临时节点会被删除,且临时节点没有子节点
data:节点数据
举例:create -s /test 1234
ls path [watch]
列出Path下对应的Znode
watch:能够监听Znode的的所有变化,可以不选
get path [watch]
获取Path对应的Znode的数据和属性
ls2 path [watch]
查看Path下所有子Znode以及子Znode的属性
set path data [version]
更新节点
delete path [version]
删除节点, 如果要删除的节点有子Znode则无法删除
rmr path
删除节点, 如果有子Znode则递归删除展开评论点赞 - 三步解决 Maven 无法下载依赖包的问题
步骤一,检查镜像版本。
查看项目中依赖包的版本是否存在,可以用 mvnrepository,地址如下:mvnrepository.com
步骤二,检查镜像仓库。
阿里云仓库改了版本,但是依赖支持以前的仓库地址。
阿里云仓库配置如下:
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>maven.aliyun.com</url>
<mirrorOf>central</mirrorOf>
</mirror>展开评论点赞 - Serverless 实战 —— 移植 spring-petclinic 到函数计算
git clonegithub.com
cd spring-petclinic
./mvnw package
java -jar target/*.jar展开评论点赞