CORNERSTONE对话腾讯&华为敏捷专家

由[CORNERSTONE](https://www.cornerstone365.cn/)主办的“深圳敏捷狂欢大会”圆满落幕。此次活动集齐了敏捷领域的大咖与近百位敏捷研发爱好者到场,会上大家通过提问互动与敏捷大咖产生了精彩的思想碰撞,大家就敏捷开发如何落地及技术人员如何转型晋升这两个话题做了深度探讨. 以下为敏捷专家薛军和李林在敏捷狂欢大会上的演讲分享 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190912112612848.pn...阅读全文

技术圈 2019-09-12 18:44:14 CORNERSTONE

Golang源码探索(三) GC的实现原理 - q303248153

Golang从1.5开始引入了三色GC, 经过多次改进, 当前的1.9版本的GC停顿时间已经可以做到极短. 停顿时间的减少意味着"最大响应时间"的缩短, 这也让go更适合编写网络服务程序. 这篇文章将通过分析golang的源代码来讲解go中的三色GC的实现原理. 这个系列分析的golang源代码是Google官方的实现的1.9.2版本, 不适用于其他版本和gccgo等其他实现, 运行环境是Ubuntu 16.04 LTS 64bit. 首先会讲解基础概念, 然后讲解分配器, 再讲解收集器的实现....阅读全文

博客园 2017-11-22 17:04 博客园

图解Golang的内存分配

一般程序的内存分配在讲Golang的内存分配之前,让我们先来看看一般程序的内存分布情况: 以上是程序内存的逻辑分类情况。 我们再来看看一般程序的内存的真实(真实逻辑)图: Go的内存分配核心思想Go是内置运行时的编程语言(runtime),像这种内置运行时的编程语言通常会抛弃传统的内存分配方式,改为自己管理。这样可以完成类似预分配、内存池等操作,以避开系统调用带来的性能问题,防止每次分配内存都需要系统调用。 Go的内存分配的核心思想可以分为以下几点: 每次从操作系统申请一大块儿的内存,由Go来对...阅读全文

RyuGou的博客 2019-05-18 00:00 RyuGou的博客

MongoDB运行状态、性能监控,分析 泛城科技技术博客

这篇文章的目的是让你知道怎么了解你正在运行的Mongdb是否健康。 mongostat详解 mongostat是mongdb自带的状态检测工具,在命令行下使用。它会间隔固定时间获取mongodb的当前运行状态,并输出。如果你发现数据库突然变慢或者有其他问题的话,你第一手的操作就考虑采用mongostat来查看mongo的状态。 它的输出有以下几列: inserts/s 每秒插入次数 query/s 每秒查询次数 update/s 每秒更新次数 delete/s 每秒删除次数 getmore/s ...阅读全文

泛城科技技术博客 2019-09-01 20:58 泛城科技技术博客

深入浅出 Go trace

本篇文章简要介绍了go语言执行跟踪程序(Trace),从功能和性能上阐述了它的优势。前言你有没有考虑过,你的goroutines是如何被go的runtime系统调度的?是否尝试理解过为什么在程序中增加了并发,但并没有给它带来更好的性能?go执行跟踪程序可以帮助回答这些疑问,还有其他和其有关性能的问题,例如延迟、竞争和较低的并行效率。该工具是Go 1.5版本加入的,通过度量go语言特定事件的运行时,例如:创建,启动和终止goroutines阻塞/非阻塞goroutines(syscalls, ch...阅读全文

IT程序猿 2018-07-04 20:47 IT程序猿

我是如何把大象装进冰箱里的……

前几天在知乎看到了这样一个问题:CORNERSTONE等项目管理工具体验如何? ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190829163320260.png) 本来利益相关太高不准备答,但是我发现题主问的是CORNERSTONE等项目管理工具体验如何,我个人理解,题主是想问:CORNERSTONE项目管理工具的使用体验如何——恐怕是题主对我们没有详细了解过。那么正好借此机会,可以向大家好好介绍一下CORNERSTONE项目管理工具! ...阅读全文

技术圈 2019-08-29 18:51:48 CORNERSTONE

模式匹配 · 傻瓜函数式编程 · 看云

## 模式匹配 模式匹配并不是什么新功能。而事实上它和函数式编程也没有什么太大的关系。它之所以常常被认为是FP的一个特性,是因为在函数式语言已经支持模式匹配很长一段时间后的今天,指令式语言是还没有这个功能。 还是直接用例子来看看什么是模式匹配吧,这是一个用Java写的Fibonacci函数: ~~~ int fib(int n) { if(n == 0) return 1; if(n == 1) return 1; return fib(n - 2) + fib(n - 1); } ~~~ 再看...阅读全文

www.kancloud.cn 2019-08-17 10:21 www.kancloud.cn

Load和CPU利用率是如何算出来的

本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.penglixun.com/tech/system/how_to_calc_load_cpu.html 相信很多人都对Linux中top命令里“load average”这一栏困惑过,到底什么是Load,Load代表了什么含义,Load高会有什么后果?“%CPU”这一栏为什么会超过100%,它是如何计算的? 带着这些问题,我们通过一些测试,来探索下其中的不解之处。 首先...阅读全文

P.Linux Laboratory 2019-08-17 09:49 P.Linux Laborat 等

「竞品分析」项目协作管理平台-Teambition和CORNERSTONE--深度...

一、分析目的通过分析2B产品中的团队协作管理软件的对比分析,用于为公司团队协作软件的选型做产考。二、竞品归属市场概况2.1.目标用户群及需求主要面向企业用户,用于解决企业不同地域以及不同职能部门之间的团队协作难点。2.2.市场规模中国大概有4000万+企业,如采用人均年费制,均价200+/人/年,按平均一个企业或团队最少10人算,市场规模可在千亿左右。因此如果能培养行业使用习惯,市场价值可观。2.3.针对笔者所在团队的需求详细分析如下:1、需求管理;能够对需求池进行管理。2、迭代管理;能够对产品...阅读全文

技术圈 2019-08-14 16:36:28 CORNERSTONE

深入解析String#intern

在 JAVA 语言中有8中基本类型和一种比较特殊的类型String。这些类型为了使他们在运行过程中速度更快,更节省内存,都提供了一种常量池的概念。常量池就类似一个JAVA系统级别提供的缓存。8种基本类型的常量池都是系统协调的,String类型的常量池比较特殊。它的主要使用方法有两种:直接使用双引号声明出来的String对象会直接存储在常量池中。如果不是用双引号声明的String对象,可以使用String提供的intern方法。intern 方法会从字符串常量池中查询当前字符串是否存在,若不存在就...阅读全文

美团技术团队 2014-03-06 00:00 美团技术团队

Go如何精确计算小数-Decimal研究

##1 浮点数为什么不精确先看两个case // case1: 135.90*100 ====// float32var f1 float32 = 135.90fmt.Println(f1 * 100) // output:13589.999// float64var f2 float64 = 135.90fmt.Println(f2 * 100) // output:13590 浮点数在单精度下, 135.9*100即出现了偏差, 双精度下结果正确. // case2: 0.1 add 10 ...阅读全文

Tidb MyDecimal问题 | hello 2017-08-27 00:00 Tidb MyDecimal问 等

Hugepage导致进程占用物理内存过多的问题

Hugepage导致进程占用物理内存过多的问题 首页 分类 标签 留言 关于 订阅 2015-04-30 | 分类 Linux  | 标签 memory  1 问题 业务同样的程序跑在TDocker、XEN,占用的内存却相差很大。 TDocker: XEN: 可以看到,虽然VIRT一样,但是程序占用的物理内存却相差6倍。 2 原因分析 经过各种分析,后来levy同学发现关闭transparent hugepage就解决了这个问题。TDocker使用的CentOS6.5的内核,默认开启了trans...阅读全文

hustcat.github.io 2015-04-30 00:00 hustcat.github. 等

Go之unsafe.Pointer && uintptr类型 - xxggy的个人页面

挑战A.I.,赢百万奖金......了解更多详情>>> Go之unsafe.Pointer && uintptr类型 unsafe.Pointer 这个类型比较重要,它是实现定位欲读写的内存的基础。官方文档对该类型有四个重要描述: (1)任何类型的指针都可以被转化为Pointer (2)Pointer可以被转化为任何类型的指针 (3)uintptr可以被转化为Pointer (4)Pointer可以被转化为uintptr 大多数指针类型会写成T,表示是“一个指向T类型变量的指针”。unsafe....阅读全文

OSCHINA 2016-08-08 17:20 OSCHINA

从科学记数法到浮点数标准IEEE 754 - 微信公众号:二进制之路

很遗憾,由于这篇文章有大量的公式,如果直接发表内容公式会显示不了,因此只能发成图片。 如果想获得更好的阅读体验,请点击:从科学记数法到浮点数标准IEEE 754 参考 https://zh.wikipedia.org/wiki/IEEE_754 https://zh.wikipedia.org/zh-hans/%E6%B5%AE%E7%82%B9%E6%95%B0 https://zh.wikipedia.org/wiki/%E7%A7%91%E5%AD%A6%E8%AE%B0%E6%95%B0...阅读全文

ITeye博客 2018-10-29 22:17 ITeye博客

JVM GC 日志详解

本文采用的JDK版本: java version "1.8.0_144" Java(TM) SE Runtime Environment (build 1.8.0_144-b01) Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode) 复制代码一、GC 日志参数 设置JVM GC格式日志的主要参数包括如下8个: -XX:+PrintGC 输出简要GC日志 -XX:+PrintGCDetails 输出详细GC日志 -Xlo...阅读全文

掘金 2019-03-07 00:00 掘金

内存屏障

内存屏障(Memory barrier) 为什么会有内存屏障 每个CPU都会有自己的缓存(有的甚至L1,L2,L3),缓存的目的就是为了提高性能,避免每次都要向内存取。但是这样的弊端也很明显:不能实时的和内存发生信息交换,分在不同CPU执行的不同线程对同一个变量的缓存值不同。 用volatile关键字修饰变量可以解决上述问题,那么volatile是如何做到这一点的呢?那就是内存屏障,内存屏障是硬件层的概念,不同的硬件平台实现内存屏障的手段并不是一样,java通过屏蔽这些差异,统一由jvm来生成内...阅读全文

简书 2017-03-03 09:06 简书