首页 文章 精选 留言 我的

精选列表

搜索[图数据库],共10000篇文章
优秀的个人博客,低调大师

(内含知识大图)

作者 |唐志龙(鲲龙) 阿里巴巴高级开发工程师 导读:本文总结了熟悉系统主要分三部分:业务学习、技术学习、实战。每部分会梳理一些在学习过程中需要解答的问题,这些问题随着经验的积累需要逐步补充完善。 前言 开发人员经常会面临下面一些场景: 新人入职,需要学习已有系统,作为 landing 的一部分,如何学习? 被拉过去参与一个陌生系统的迭代开发或者系统维护(bugfix),如何快速上手? 同事离职或转岗,需要把系统交接给你,怎么去接? 内心 os:这是一口锅吗? 这样的场景多了,就需要去梳理常见问题以及应对方法,方便后续遇到类似场景可以快速应对。本文总结熟悉系统主要分三部分:业务学习、技术学习、实战。每部分会梳理一些在学习过程中需要解答的问题,这些问题随着经验的积累需要逐步补充完善。 业务学习 业务学习就是从业务角度去学习系统,我们需要了解系统的

优秀的个人博客,低调大师

使用火焰图FlameGraph分析JVM应用性能

安装及使用 安装前提软件 centos yum install perf -y yum install gcc -y yum install gcc-c++ yum install cmake -y ubuntu apt install linux-tools-generic apt install linux-tools-common FlameGraph # 参考 http://www.brendangregg.com/FlameGraphs/cpuflamegraphs.html#Java export JAVA_HOME=/root/jdk1.8.0_181 export PATH=$JAVA_HOME/bin:$PATH git clone --depth=1 https://github.com/jrudolph/perf-map-agent cd perf-map-agent cmake . make bin/create-links-in /usr/bin git clone https://github.com/brendangregg/FlameGraph.git export FLAMEGRAPH_DIR=/root/git/FlameGraph # jvm启动参数需要增加 -XX:+PreserveFramePointer perf-java-flames 21322 结果展示 svg格式的图片可以下钻,点击查看: [](http://oss.zrbcool.top/picgo/flamegraph-21322.svg)http://oss.zrbcool.top/picgo/flamegraph-21322.svg 容器内如何分析? 请参考笔者的另一篇文章Docker中使用FlameGraph分析JVM应用性能 更多参考 https://www.meiwen.com.cn/subject/xafqkqtx.html https://bugs.openjdk.java.net/browse/JDK-8068945 https://bugs.openjdk.java.net/browse/JDK-6515172 http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2014-December/016477.html https://medium.com/netflix-techblog/java-in-flames-e763b3d32166 https://blog.codecentric.de/en/2017/09/jvm-fire-using-flame-graphs-analyse-performance/ https://github.com/jvm-profiling-tools/honest-profiler/wiki/How-to-Run https://gperftools.github.io/gperftools/pprof-vsnprintf-big.gif https://github.com/jvm-profiling-tools/perf-map-agent http://www.brendangregg.com/FlameGraphs/cpuflamegraphs.html#Java http://www.brendangregg.com/blog/2014-06-12/java-flame-graphs.html https://github.com/brendangregg/FlameGraph

优秀的个人博客,低调大师

推荐几个牛逼的 IDEA 插件,还带动图!

阅读本文大概需要 2.3 分钟。 作者:纪莫, cnblogs.com/jimoer 这里只是推荐一下好用的插件,具体的使用方法不一一详细介绍。 JRebel for IntelliJ 一款热部署插件,只要不是修改了项目的配置文件,用它都可以实现热部署。收费的,破解比较麻烦。不过功能确实很强大。算是开发必备神器了。热部署快捷键是control+F9/command+F9。 .ignore git提交时过滤掉不需要提交的文件,很方便,有些本地文件是不需要提交到Git上的。 CamelCase 将不是驼峰格式的名称,快速转成驼峰格式,安装好后,选中要修改的名称,按快捷键shift+alt+u。 Lombok plugin 开发神器,可以简化你的实体类,让你i不再写get/set方法,还能快速的实现builder模式,以及链式调用方法,总之就是为了简化实体类而生的插件。 Mybatis plugin 可以在mapper接口中和mapper的xml文件中来回跳转,就想接口跳到实现类那样简单。 codehelper.generator 可以让你在创建一个对象并赋值的时候,快速的生成代码,不需要一个一个属性的向里面set,根据new关键字,自动生成掉用set方法的代码,还可以一键填入默认值。 GenAllSetter 特性 在Java方法中, 根据 new 关键词, 为Java Bean 生成所有Setter方法。 按GenAllSetter键两次, 会为Setter方法生成默认值。 可在Intellij Idea中为GenAllSetter设置快捷键。 如何使用: 将光标移动到 new 语句的下一行。 点击主菜单Tools-> Codehelper-> GenAllSetter, 或者按下GenAllSetter快捷键。 GenDaoCode 特性 根据Pojo 文件一键生成 Dao,Service,Xml,Sql文件。 Pojo文件更新后一键更新对应的Sql和mybatis xml文件。 提供insert,insertList,update,select,delete五种方法。 能够批量生成多个Pojo的对应的文件。 自动将pojo的注释添加到对应的Sql文件的注释中。 丰富的配置,如果没有配置文件,则会使用默认配置。 可以在Intellij Idea中快捷键配置中配置快捷键。 目前支持MySQL + Java,后续会支持更多的DB。 如果喜欢我们的插件,非常感谢您的分享。 GenDaoCode 使用方法 主菜单Tools-> Codehelper-> GenDaoCode 按键便可生成代码。 方法一:点击GenDaoCode,然后根据提示框输入Pojo名字,多个Pojo以 | 分隔。 Codehelper Generator会根据默认配置为您生成代码。 方法二:在工程目录下添加文件名为codehelper.properties的文件。 点击GenDaoCode,Codehelper Generator会根据您的配置文件为您生成代码。 GsonFormat 一键根据json文本生成java类,非常方便 GenerateAllSetter 一键调用一个对象的所有set方法并且赋予默认值 在对象字段多的时候非常方便,在做项目时,每层都有各自的实体对象需要相互转换,但是考虑BeanUtil.copyProperties()等这些工具的弊端,有些地方就需要手动的赋值时,有这个插件就会很方便,创建完对象后在变量名上面按Alt+Enter就会出来 generate all setter选项。 CodeGlance 在编辑区的右侧显示的代码地图。 下面几个是装X神器了(让你的开发工具变得靓丽起来) Material Theme UI 这是一款主题插件,可以让你的ide的图标变漂亮,配色搭配的很到位,还可以切换不同的颜色,甚至可以自定义颜色。默认的配色就很漂亮了,如果需要修改配色,可以在工具栏中Tools->Material Theme然后修改配色等。 Background image Plus 这是一款可以设置idea背景图片的插件,不但可以设置固体的图片,还可以设置一段时间后随机变化背景图片,以及设置图片的透明度等等。 active-power-mode 这是一款让你在编码的时候,整个屏幕都为之颤抖的插件。 Nyan progress bar 这是一个将你idea中的所有的进度条都变成萌新动画的小插件。 Rainbow Brackets 彩虹颜色的括号 看着很舒服 敲代码效率变高 总结 好的开发工具可以提高开发效率,所以的能让自己提高效率,把时间节省出来去学习,去提升自己。这些插件只是日常开发当中用到的一些,等到以后再发现了新的好玩的有意思,和提高工作效率的插件,继续分享出来。 ·END· 程序员的成长之路 路虽远,行则必至

优秀的个人博客,低调大师

两张趣图助你理解 HTTP 状态码!

HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码。 我们可以通过查看HTTP状态码来判断服务器状态,常见的有404 、502等;但是其他不是很常见的状态码都代表什么状态呢?下面有两张有趣的图片,让你瞬间都能理解了。 HTTP状态码(图一) ● 301—永久移动。被请求的资源已被永久移动位置; ● 302—请求的资源现在临时从不同的 URI 响应请求; ● 305—使用代理。被请求的资源必须通过指定的代理才能被访问; ● 307—临时跳转。被请求的资源在临时从不同的URL响应请求; ● 400—错误请求; ● 402—需要付款。该状态码是为了将来可能的需求而预留的,用于一些数字货币或者是微支付; ● 403—禁止访问。服务器已经理解请求,但是拒绝执行它; ● 404—找不到对象。请求失败,资源不存在; ● 406—不可接受的。请求的资源的内容特性无法满足请求头中的条件,因而无法生成响应实体; HTTP状态码(图二) ● 408—请求超时; ● 409—冲突。由于和被请求的资源的当前状态之间存在冲突,请求无法完成; ● 410—遗失的。被请求的资源在服务器上已经不再可用,而且没有任何已知的转发地址; ● 413—响应实体太大。服务器拒绝处理当前请求,请求超过服务器所能处理和允许的最大值。 ● 417—期望失败。在请求头 Expect 中指定的预期内容无法被服务器满足; ● 418—我是一个茶壶。超文本咖啡罐控制协议,但是并没有被实际的HTTP服务器实现; ● 420—方法失效。 ● 422—不可处理的实体。请求格式正确,但是由于含有语义错误,无法响应; ● 500—服务器内部错误。服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理; 原文发布时间为:2018-10-10 本文来自云栖社区合作伙伴“Java技术栈”,了解相关信息可以关注“Java技术栈”。

优秀的个人博客,低调大师

centos7上运行docker指令加配图

uname -a 查看内核ls -l /sys/class/misc/devcie-mapperwhereis curl(1)启动,systemctl start docker.service(2)开机启动,systemctl enable docker.service//sudo groupadd dockersudo gpasswd -a ${USER}dockersudo service docker restart dc1 为我们一开始启动的容器 1.开启容器 docker run -i -t centos /bin/bash docker run -i -t -p 80 --name dc1 -d centos /bin/bash // 带名字带指定端口 docker run --name dc1 -d centos /bin/sh -c "while true; do echo hello world; sleep 1; done" // 带脚本程序 // 守护退出 (容器到后台运行)ctrl +P + CTRL + Q 2.查看容器 docker ps 3.重新进入容器 docker attach (容器id) 4.启动守护式容器: docker run -d 镜像名[command][arg...] docker run --name dc1 -d centos /bin/sh -c "while true; do echo hello world; sleep 1; done" 5.查看容器日志 docker logs dc1 //所有日志 docker logs -t dc1 //带时间的日志 docker logs -tf dc1 // 动态带时间显示 用ctrl + c 或z退出 docker logs -tf --tail 10 dc1 // 只显示新的10条 6.查看容器进程 docker top dc1 查看运行中容器进程 7.容器中启动新进程 docker exec [-d][-i][-t] 容器名[command][arg...](shell 命令和参数) docker exec -i -t dc1 /bin/bash 8.停止守护式容器 docker stop 容器名 // 发出停止容器信号等待运行结束停止 docker kill 容器名 // 直接停止容器 使用docker 帮助文件查看更多指令 crul http:///,..访问 docker stop web docker start -i web docker exec web nginx docker top web docker info 查看信息 镜像默认存储位置 docker images docker images --no-trunc //查看完整id docker images -a //显示所有镜像包括中间层 docker images -q //只返回imageid docker images centos //centos 仓库名称 查看镜像详细信息 删除镜像 docker rmi + 镜像名称(可以写多个) 删除所有 docker rmi $(docker images -q centos) // 删除centos 仓库中所有镜像 解决centos7 docker1.9 没有配置文件

优秀的个人博客,低调大师

Windows Virtual PC & Windows XP Mode 安装图览

在开始之前建议先回顾一下先前发布的两篇日志, Windows Virtual PC 功能概述 、 Windows Virtual PC & XP Mode 面向应用兼容性问题的终极武器 ,之后检查自己的 CPU 是否支持虚拟化技术,并从微软官方下载 Windows Virtual PC 功能更新包,再根据实际需要选择 Windows XP Mode 的语言版本,如果你需要的是一个中文版的 Windows XP 虚拟机那就要下在对应的中文版本。 Windows Virtual PC 和 Windows XP Mode 的下载已经公布在了官方网站上。大家可以访问这个地址获取下载: http://www.microsoft.com/windows/virtual-pc/download.aspx 第一步,选择你当前 Windows 7 的系统架构和 Windows XP Mode 语言版本。第二步,点击“Download Windows Virtual PC Beta”功能更新包;第三步,单击“Download Windows XP Mode Beta”。之后我们会得到两个程序安装包,Windows Virtual PC package:Windows6.1-KB958559-x86.msu;Windows XP Mode Installer:VirtualWindowsXP_32_zh-cn.msi。(注意:我的当前系统架构是x86的,并选择中文的 Windows XP Mode) 在安装之前建议先对自己的硬件进行确认,CPU 是否支持虚拟化技术。如果你不能确认,可以下载 Intel Processor Identification Utility或 AMD Virtualization Compatibility Check Utility工具进行检测。Windows Virtual PC package 的安装非常简单,这里不再叙述。下面则是 Windows XP Mode 的安装截图,供大家参考! 总体来说 Windows XP Mode 的安装也是非常之简单,其中一些 Windows XP 传统的安装步骤都是自动化的无需干预,唯一需要做的就是为 Windows XP Mode 配置一个管理密码,并根据需要选择是否启用自动更新功能。最后想到会自动启用集成功能,并要求我们输入管理密码以便登录到 Windows XP Mode 上。先在我们就可以使用操作模式来操作管理 Windows XP Mode 了。 如果在启动 Windwos XP Mode 时遇到下图的错误,说明你没有在 BIOS 中启用 CPU 的虚拟化支持。可以参考微软官方的资料对计算机进行配置并确认。该地址是: http://www.microsoft.com/windows/virtual-pc/support/configure-bios.aspx,在刚刚就有网友咨询我此类的问题,而下面的错误截图就是他提供的,感谢群组里的三叶草!不过他之前已经在 BIOS 里打开了 VT 支持,但是问题依然存在,最后参考了给他的官方地址中的资料,才发现忽视了最后的一个步骤:“10. Fully shut down (power off), wait a few seconds, and restart your computer”。Yes!在开启 VT 支持后我们需要关闭计算机等待几秒在重新加电开机。 本文转自 苏繁 51CTO博客,原文链接:http://blog.51cto.com/goxia/219268,如需转载请自行联系原作者

优秀的个人博客,低调大师

一张图搞清楚Java异常机制

下面是Java异常类的组织结构,红色区域的异常类表示是程序需要显示捕捉或者抛出的。 image.png Throwable Throwable是Java异常的顶级类,所有的异常都继承于这个类。 Error,Exception是异常类的两个大分类。 Error Error是非程序异常,即程序不能捕获的异常,一般是编译或者系统性的错误,如OutOfMemorry内存溢出异常等。 Exception Exception是程序异常类,由程序内部产生。Exception又分为运行时异常、非运行时异常。 运行时异常 运行时异常的特点是Java编译器不会检查它,也就是说,当程序中可能出现这类异常,即使没有用try-catch语句捕获它,也没有用throws子句声明抛出它,也会编译通过,运行时异常可处理或者不处理。运行时异常一般常出来定义系统的自定义异常,业务根据自定义异常做出不同的处理。 常见的运行时异常如NullPointException、ArrayIndexOutOfBoundsException等。 非运行时异常 非运行时异常是程序必须进行处理的异常,捕获或者抛出,如果不处理程序就不能编译通过。如常见的IOException、ClassNotFoundException等。 推荐阅读 去BAT面试完的Mysql面试题总结(55道,带完整答案) 阿里高级Java面试题(首发,70道,带详细答案) 2017派卧底去阿里、京东、美团、滴滴带回来的面试题及答案 Spring面试题(70道,史上最全) 通往大神之路,百度Java面试题前200页。 分享Java干货,高并发编程,热门技术教程,微服务及分布式技术,架构设计,区块链技术,人工智能,大数据,Java面试题,以及前沿热门资讯等。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册