ICode9

精准搜索请尝试: 精确搜索
  • 并发编程2022-06-20 13:03:57

    Go 并发原语 并发问题出现的原因---> 在Go开发中如何监测到这个问题---> Go 是如何解决的 互斥锁 https://songlh.github.io/paper/go-study.pdf 问题描述: package main import( "fmt" "sync" ) func main(){ var count = 0 // 使用 WaitGroup等待 10个goroutine 完成 va

  • 云原生时代的后端业务开发和项目系统学习2022-06-20 09:02:44

    现在的后端主流语言无非是 C++、Go、Java、Python这几类,这4个语言是近些年来不同时代不同业务阶段的后端语言开发代表。 Go是这两三年的后起之秀,其设计理念是“正交化组件设计的哲学”。目前大部分大厂的新型业务都开始全面拥抱Go了,我认为Go正是迎合云原生、云平台、云计算平台时

  • 数据库__并发控制2022-06-20 01:00:11

    多用户数据库系统 多用户数据库系统: 允许多个用户同时使用的数据库系统 特点: 在同一时刻并发运行的事务数可达数百上千个 多事务执行方式: 串行执行 顺序执行 交叉并发(Interleaved Concurrency) 单处理机系统中,事务的并行执行是这些并行事务的并行操作轮流交叉运行 单处理机系

  • 性能测试记录2022-06-18 16:03:00

    1、测试分类 (1)基准测试:模拟单用户运行,产生基准性测试数据; (2)并发测试:模拟多用户运行,验证服务是否有问题; (3)负载测试:找到系统最大的负载能力; (4)压力测试:系统达到饱和时,系统处理业务的能力; (5)稳定性测试:测试系统在一定的业务压力下系统可持续运行的时间; (6)配置测试:通过环境的调整来分析系

  • 多年亿级流量下的高并发经验总结,我毫无保留的写在了这本书中2022-06-17 14:37:21

    大家好,我是冰河~~ 今天,给大家隆重的宣布一个好消息:继出版《海量数据处理与大数据技术实战》、《MySQL技术大全:开发、优化与运维实战》和《深入理解分布式事务:原理与实战》之后,冰河的第4本书——《深入理解高并发编程:核心原理与案例实战》正式上市了。 今天,我正式为大家送上本书的

  • Go语言入门 (Day 5)并发2022-06-16 18:34:30

    Go 并发 Go 程 Go 程(goroutine)是由 Go 运行时管理的轻量级线程。 go f(x, y, z) 会启动一个新的 Go 程并执行 f(x, y, z) f, x, y 和 z 的求值发生在当前的 Go 程中,而 f 的执行发生在新的 Go 程中。 Go 程在相同的地址空间中运行,因此在访问共享的内存时必须进行同步。sync 包提

  • 悲观锁与乐观锁 使用场景2022-06-16 11:36:56

    两种锁各自的使用场景 悲观锁适合用于并发写入多、临界区代码复杂、竞争激烈等场景,这种场景下悲观锁可以避免大量的无用的反复尝试等消耗。 乐观锁适用于大部分是读取,少部分是修改的场景,也适合虽然读写都很多,但是并发并不激烈的场景。在这些场景下,乐观锁不加锁的特点能让性能大幅

  • 设计模式-生产者消费者模式2022-06-15 22:04:36

    生成者消费者模式 解释 什么是生产者和消费者? 两个模块(可能是函数、线程或进程),一个生产数据,一个消费数据,生产数据的模块叫生产者,消费数据的模块叫消费者。 为什么要使用生产者-消费者模式? 在多线程开发时,生产者可能产生数据的速度比较快,这时候生产者需要等消费者消费完了才

  • JUC并发编程2022-06-15 18:33:20

    JUC概念 进程和线程 ​ 一个进程包括多个线程 ​ 进程指的是一个正在运行的应用程序,进程是一个资源分配的最小单位 ​ 线程是程序中一个单元执行流,程序执行的最小单位 用户线程:基本我们编程的线程都是用户线程 ​ 主线程结束,用户线程还在,jvm存活

  • JVM垃圾回收算法和垃圾回收器2022-06-15 18:32:39

    一、垃圾回收算法1、标记复制算法会把内存分为相同的2个部分,每次回收,会把存活的对象移动到另一边,回收当前使用的空间。分配的内存被分成2份,实际使用空间变成正常的一半。但是不会出现垃圾碎片。 2、标记清除算法标记存活的对象,把未标记的回收。回收后内存不是连续的,会产生大量的不

  • 记录一次排查OOM的过程2022-06-15 11:00:25

    服务出现了oom: 查看类信息发现char[]类型实例特别多,占用堆内存特别大 跟踪几个char[]实例的GC root,发现都是保存token信息,并且根都是session 然后查看session的个数,发现有63W 我是用100并发压测的为什么会产生那么多个session?我突然想到我们是前后端分离的,那么前端ajax的时候

  • 性能测试中TPS和并发用户数2022-06-15 10:03:07

    转载:https://blog.51cto.com/u_330478/5020738   并发用户数:是指现实系统中操作业务的用户,在性能测试工具中,一般称为虚拟用户数(Virutal User)。   并发用户数和注册用户数、在线用户数的概念不同, 1、并发用户数一定会对服务器产生压力的, 2、而在线用户数只是 ”挂” 在系统上,对

  • mysql多实例详解2022-06-14 09:34:02

                              MySQL多实例管理   1、多实例介绍 单实例: 在⼀台linux上,某个⽬录下,安装了⼀ 个mysql,且启动了这个mysql,这就表示,这个机器上,有单独的⼀个mysql 个体,⼀个实例。   多实例: 就是⼀台linux上,同时运⾏多个mysql,当然是区别了不同的端⼝, 例如3306

  • 高并发下如何避免产生重复数据?2022-06-13 22:03:05

    前言 最近测试给我提了一个bug,说我之前提供的一个批量复制商品的接口,产生了重复的商品数据。 追查原因之后发现,这个事情没想象中简单,可以说一波多折。 1. 需求 产品有个需求:用户选择一些品牌,点击确定按钮之后,系统需要基于一份默认品牌的商品数据,复制出一批新的商品。 拿到这个需求

  • 王者并发课-钻石2:分而治之-如何从原理深入理解ForkJoinPool的快与慢2022-06-13 20:00:48

    欢迎来到《王者并发课》,本文是该系列文章中的第25篇,砖石中的第2篇。 在上一篇文章中,我们学习了线程池ThreadPoolExecutor,它通过对任务队列和线程的有效管理实现了对并发任务的处理。然而,ThreadPoolExecutor有两个明显的缺点:一是无法对大任务进行拆分,对于某个任务只能由单线程执行;

  • 第八章 多线程 2- 并行与并发2022-06-13 17:35:29

    1.单核CPU和多核CPU的理解 单核CPU:其实是一种假的的多线程,因为在一个时间单元内,也只能执行一个线程的任务。 例如:虽然有多车道,但是收费站只有一个工作人员在收费,只有收了费的才能通过,那么CPU就好比收费人员。如果某个人不想交钱,那么收费人员就可以把他“挂起”(晾着他,等他想通了,准

  • testNG(三) 并发2022-06-12 18:36:19

    TestNG中的多线程使用 不同级别的并发 通常,在TestNG的执行中,测试的级别由上至下可以分为suite -> test -> class -> method,箭头的左边元素跟右边元素的关系是一对多的包含关系。 这里的test指的是testng.xml中的test tag,而不是测试类里的一个 @Test。测试类里的一个 @Test实际上对

  • 数据库 __ 基于锁的协议的并发控制2022-06-12 17:35:03

    确保隔离性的方法之一是要求对数据项以互斥的方式进行访问;换句话说,当一个事务访问某个数据项时, 其他任何事务都不能修改该数据项。 实现该需求最常用的方法是只允许事务访问当前该事务持有锁( lock ) 的数据项。 锁 锁就是指:只有获得相应的锁后,才能执行相应的操作。 一个事务只要

  • go的CSP模型2022-06-12 03:32:27

    原文:https://zhuanlan.zhihu.com/p/313763247 一、CSP是什么 CSP 是 Communicating Sequential Process 的简称,中文可以叫做通信顺序进程,是一种并发编程模型,是一个很强大的并发数据模型,是上个世纪七十年代提出的,用于描述两个独立的并发实体通过共享的通讯 channel(管道)进行通信的

  • 浅谈高并发、高性能、高可用2022-06-11 22:31:15

    浅谈高并发、高性能、高可用 摘要:大型网站的技术挑战主要来自于庞大的用户,高并发的访问和海量的数据,任何简单的业务一旦需要处理数以Р计的数据和面对数以亿计的用户,问题就会变得很棘手。大型网站架构主要就是解决这类问题。中国铁道部官方售票网站在春节运行期间大量用户访问导

  • MySQL高级篇之第16章 多版本并发控制2022-06-11 17:33:27

    第16章 多版本并发控制 1. 什么是MVCC MVCC (Multiversion Concurrency Control),多版本并发控制。顾名思义,MVCC 是通过数据行的多个版本管理来实现数据库的并发控制。这项技术使得在InnoDB的事务隔离级别下执行一致性读操作有了保证。换言之,就是为了查询一些正在被另一个事务更新的

  • 并发编程基础底层原理学习(四)2022-06-11 01:04:58

    重排序 在程序执行时,为了提高性能,编译器和处理器常常会对指令做重排序。重排序分为三种类型。 编译器优化的重排序。编译器在不改变单线程程序语义的前提下,可以重新安排语句的执行顺序。 指令级并行的重排序。现代处理器采用了指令级并行技术来将多条指令重叠执行。如果不存在数

  • github爆火!阿里P8大佬含泪分享3w字的《Java并发编程实战笔记》2022-06-10 15:32:03

    前言 相信身为程序员的我们都知道,线程是Java语言中不可或缺的 重要功能,它们能使复杂的异步代码变得更简单,从而极大地简化了复杂系统的开发。此外, 要想充分发挥多处理器系统的强大计算能力,最简单的方式就是使用线程。随着处理器数量的 持续增长,如何高效地使用并发正变得越来越重要

  • Oracle 并发 连接数 查询2022-06-10 11:03:35

    如何查看ORACLE的并发值,也就是说在某一秒同时在线的人数 可是查看v$license视图 v$license视图: SQL> select SESSIONS_CURRENT,SESSIONS_HIGHWATER from v$license;SESSIONS_CURRENT SESSIONS_HIGHWATER---------------- ------------------               47       

  • Golang并发安全与引用传递总结2022-06-09 11:33:44

    码住!Golang并发安全与引用传递总结 https://mp.weixin.qq.com/s/svKtrTbEU-2MsChqvZKjMA 码住!Golang并发安全与引用传递总结 原创 徐世佳 云加社区 2022-06-08 18:02 发表于广东   导语 | 因为现在服务上云的趋势,业务代码都纷纷转向golang的技术栈。在迁移或使用的过程中

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有