- 博客(12)
- 资源 (38)
- 收藏
- 关注
原创 温故知新-多线程-深入刨析CAS
Posted by 微博@Yangsc_o原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0摘要本文从CAS的基本操作开始,逐步探究CAS的实现原理,本文涉及代码使用JDK1.8版本;CAS是什么?CAS是Compare And Swap (Compare And Exchange) 的简称,从因为的意思也很容易理解:比较并交换。先看一段代码,两个线程分别对atomicInteger加100,因为AtomicInteg..
2020-05-26 20:00:39 239
原创 温故知新-多线程-深入刨析volatile关键词
Posted by 微博@Yangsc_o原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0摘要本文主要涉及Java中的编程语言&性能优化关键字,将从volatile的作用开启,再分析volatile实现的从而深刻立即理解volatile的作用;volatile的作用我在前几篇的文章编程语言&性能优化已经提到了volatile的作用;概括一下就是:线程可见防止指令重排volatile如何解决线程..
2020-05-26 01:58:10 266
原创 温故知新-java多线程&深入理解线程池
Posted by 微博@Yangsc_o原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0摘要本文主要回顾java的JDK中的多线程的常见用法&线程池&锁等,以及之前文章里提到的编程语言&性能优化提到的volatile、内存屏障等;本文超级干!!!java中的线程创建线程的3种方式通过实现 Runnable 接口来创建线程通过继承Thread来创建线程通过 Callable 和 Fu..
2020-05-25 18:25:15 636
原创 温故知新-java的I/O模型-BIO&NIO&AIO
Posted by 微博@Yangsc_o原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0摘要通过温故知新-快速理解Linux网络IO的回顾,我们了解Linux下网络编程的5种I/O模型&I/O多路复用,接下来回顾一下java中的I/O模型,包括BIO、NIO、AIO,为下一篇netty做铺垫。传统的BIO编程传统的BIO通信模型问题该模型最大的问题就是,客户端的线程个数和客户端的并发呈1:1的关系,线程..
2020-05-19 19:34:22 275
原创 温故知新-快速理解Linux网络I/O
Posted by 微博@Yangsc_o原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0
2020-05-18 19:20:17 305
原创 追根溯源-编程语言&性能优化
Posted by 微博@Yangsc_o原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0摘要昨天晚上莫名其妙的头脑风暴,凌晨4点多才睡着,脑子一直充斥这些语言:c、c++、java、python、js、php,线程、进程、网络IO、性能等等;重新探究事务原理能帮助各种实践遇到的各种疑问,这大概就理论指导实践;今天就来简单聊一聊,后续再写博客展开详细叙述。语言分类汇编:MASM编译:c、c++、oc混合语言(半..
2020-05-18 00:03:14 270
原创 温故知新-快速理解zookeeper功能&应用&选举机制
Posted by 微博@Yangsc_o原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0zookeeper简介什么是zookeeperzooKeeper由雅虎研究院开发, 是Google Chubby的开源实现, 后来托管到Apache, 于2010年11月正式成为Apache的顶级项目。- 大数据生态系统里的很多组件的命名都是某种动物或者昆虫, 比如hadoop就是????, hive就是????。 zookeepe
2020-05-14 01:46:50 501 1
原创 温故知新-Mysql锁&事务&MVCC
Posted by 微博@Yangsc_o原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0锁概述锁是计算机协调多个进程或线程并发访问某一资源的机制(避免争抢)。在数据库中,除传统的计算资源(如 CPU、RAM、I/O 等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其..
2020-05-11 15:36:24 762
原创 温故知新-Mysql的体系结构概览&sql优化步骤
Mysql的体系结构概览整个MySQL Server由以下组成Connection Pool : 连接池组件Management Services & Utilities : 管理服务和工具组件SQL Interface : SQL接口组件Parser : 查询分析器组件Optimizer : 优化器组件Caches & Buffers : 缓冲池组件Pluggable Storage Engines : 存储引擎File System : 文件系统连接层最上层
2020-05-11 12:28:02 513
原创 温故知新-Mysql索引结构&页&聚集索引&非聚集索
索引索引概述MySQL官方对索引的定义为:索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护者满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据, 这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。索引优势劣势优势类似于书籍的目录索引,提高数据检索的效率,降低数据库的IO成本。通过索引列对数据进行排序,降低数据排序的成本,降低CPU的消耗。劣势实际上索引也是一张表,该表中保存了主键与索引字段,并指向实体类的
2020-05-09 16:39:52 574
原创 使用wrk进行http压力测试
最近做了一些服务器的工作,在做http压力测试时,先是使用ab,发现mac上总是频繁出现各种问题,eg: "apr_socket_recv: Connection reset by peer (54)"等等;最后切到了wrk,简单易用,功能强大,可以支持lua脚本来创建复杂的测试场景推荐给大家。wrk只能运行于 Unix 类的系统上,不过Win10 RS及以上版本,启用Ubuntu子系统也可以使用。测试例子:wrk -c 1000 -t 4 -d 1 --latency http://www.baid
2020-05-09 12:13:02 494
原创 温故知新-java虚拟机
Posted by 微博@Yangsc_o原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0java虚拟机是什么?java虚拟机(java virtual machine,JVM),一种能够运行java字节码的虚拟机。作为一种编程语言的虚拟机,实际上不只是专用于Java语言,只要生成的编译文件匹配JVM对加载编译文件格式要求,任何语言都可以由JVM编译运行,比如kotlin、scala等。jvm有很多,..
2020-05-09 11:51:14 276
SecureCRT_8.7.2_(2214.136177)___macwk.com.dmg
2020-06-01
传智博客Spring框架2016版笔记资料.zip
2018-01-02
2014斯坦福大学机器学习mkv视频_机器学习个人笔记完整版v4.21
2017-11-24
语音与语言处理:自然语言处理、计算语言学和语音识别导论(英文版)
2017-08-02
iPhone三维程序设计(中文版带目录).pdf
2016-09-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人