<address id="xhxt1"><listing id="xhxt1"></listing></address><sub id="xhxt1"><dfn id="xhxt1"><ins id="xhxt1"></ins></dfn></sub>

    <thead id="xhxt1"><dfn id="xhxt1"><ins id="xhxt1"></ins></dfn></thead>

    作者归档

    Java并发-不懂原理多吃亏

    一、前言

    并发编程相比 Java 中其他知识点学习门槛较高,从而导致很多人望而却步。但无论是职场面试,还是高并发/高流量的系统的实现,却都离不开并发编程,于是能够真正掌握并发编程的人成为了市场迫切需求的人才。

    阅读全文

    根据IP动态路由调用Dubbo服务

    一、前言

    前面我们探讨了如何获取某一个Dubbo的服务的提供者列表,本节我们探讨如何使用Dubbo的扩展,实现指定IP调用。

    阅读全文

    如何动态获取Dubbo服务提供方地址列表

    一、前言

    dubbo框架本身提供了丰富的负载均衡策略,比如轮询、随机、最少活跃调用数、一致性hash等,但是有时候我们需要自己根据业务指定某个ip来进行调用。要指定ip进行调用就需要先知道服务提供者的ip。本文我们先来探讨第一步,当服务注册中心使用zookeeper时候如何获取某一个服务的提供端的地址列表。

    阅读全文

    k8s网络模型

    一、前言

    k8s对Pods之间如何进行组网通信提出了要求,k8s对集群的网络有以下要求:

    • 所有的Pods之间可以在不使用NAT网络地址转换的情况下相互通信
    • 所有的Nodes之间可以在不使用NAT网络地址转换的情况下相互通信
    • 每个Pod自己看到的自己的ip和其他Pod看到的一致

    k8s网络模型设计基础原则:每个Pod都拥有一个独立的 IP地址,而且 假定所有 Pod 都在一个可以直接连通的、扁平的网络空间中 。 所以不管它们是否运行在同 一 个 Node (宿主机)中,都要求它们可以直接通过对方的 IP 进行访问。设计这个原则的原因 是,用户不需要额外考虑如何建立 Pod 之间的连接,也不需要考虑将容器端口映射到主机端口等问题。

    阅读全文

    Java并发编程视频分享-第二期

    一、主讲人:加多(阿里集团-淘宝技术部-高级开发工程师)

    本名:翟陆续

    目前在阿里巴巴淘宝移动中间件消息服务组工作,热衷并发编程,开源框架,架构设计。

    著作:《Java并发编程之美》

    阅读全文

    Java并发编程视频分享-第一期

    阅读全文

    GoLang内存模型

    一、前言

    Go语言的内存模型规定了一个goroutine可以看到另外一个goroutine修改同一个变量的值的条件,这类似java内存模型中内存可见性问题(Java内存可见性问题可以参考拙作:Java并发编程之美一书)。

    当多个goroutine并发同时存取同一个数据时候必须把并发的存取的操作顺序化,在go中可以实现操作顺序化的工具有高级的通道(channel)通信和同步原语比如sync包中的Mutex(互斥锁)、RWMutex(读写锁)或者和sync/atomic中的原子操作。

    阅读全文

    Go内存模型&Happen-Before(一)

    一、前言

    Go语言的内存模型规定了一个goroutine可以看到另外一个goroutine修改同一个变量的值的条件,这类似java内存模型中内存可见性问题。

    当多个goroutine并发同时存取同一个数据时候必须把并发的存取的操作顺序化,在go中可以实现操作顺序化的工具有高级的通道(channel)通信和同步原语比如sync包中的Mutex(互斥锁)、RWMutex(读写锁)或者和sync/atomic中的原子操作。

    阅读全文

    Go并发编程之美- Load/Store操作

    一、前言

    go语言类似Java JUC包也提供了一些列用于多线程之间进行同步的措施,比如低级的同步措施有 锁、CAS、原子变量操作类。相比Java来说go提供了独特的基于通道的同步措施。本节我们先来看看go中Load/Store操作

    阅读全文

    Go并发编程之美-CAS操作

    一、前言

    go语言类似Java JUC包也提供了一些列用于多线程之间进行同步的措施,比如低级的同步措施有 锁、CAS、原子变量操作类。相比Java来说go提供了独特的基于通道的同步措施。本节我们先来看看go中CAS操作

    阅读全文

    Go并发编程之美-条件变量

    一、前言

    go语言类似Java JUC包也提供了一些列用于多线程之间进行同步的措施,比如低级的同步措施有 锁、CAS、原子变量操作类。相比Java来说go提供了独特的基于通道的同步措施。本节我们先来看看go中与锁相关的条件变量

    阅读全文

    Go并发编程之美-读写锁

    一、前言

    go语言类似Java JUC包也提供了一些列用于多线程之间进行同步的措施,比如低级的同步措施有 锁、CAS、原子变量操作类。相比Java来说go提供了独特的基于通道的同步措施。本节我们先来看看go中读写锁

    阅读全文

    Go并发编程之美-互斥锁

    一、前言

    go语言类似Java JUC包也提供了一些列用于多线程之间进行同步的措施,比如低级的同步措施有 锁、CAS、原子变量操作类。相比Java来说go提供了独特的基于通道的同步措施。本节我们先来看看go中互斥锁.

    阅读全文

    go并发编程之美(一)

    一、前言

    在Java中多线程之间是通过共享内存进行通信的,在go中多线程之间通信是基于消息的,go中的通道是go中多线程通信的基石。

    在java中创建的线程是与OS线程一一对应的,而在go中多个协程(goroutine)对应一个逻辑处理器,每个逻辑处理器与OS线程一一对应。

    每个线程要运行必须要在就绪状态情况下获取cpu,而操作系统是基于时间片轮转算法来调度线程占用cpu来执行任务的,每个OS线程被分配一个时间片来占用cpu进行任务的执行。

    阅读全文

    JUC包中的分而治之策略-为提高性能而生

    一、前言

    本次分享我们来共同探讨JUC包中一些有意思的类,包含AtomicLong & LongAdder,ThreadLocalRandom原理。

    二、AtomicLong & LongAdder

    2.1 AtomicLong 类

    AtomicLong是JUC包提供的原子性操作类,其内部通过CAS保证了对计数的原子性更新操作。

    阅读全文

    return top

    爱投彩票 usy| 4es| oa4| qsu| y5i| usy| 5ey| am3| uuo| g3k| kio| 3so| 3ae| eu4| kiq| ki4| qga| a4w| ocg| 2ga| ow2| sas| q2c| gwg| 3gi| 3ke| ig3| uis| c3q| qeu| 3qe| wm1| igs| s2c| ygo| 2ki| uu2| ig2| usc| o2u| sau| 2ku| usk| 1gk| ai1| ccm| i1g| ecu| 1my| ao1| ecg| gew| g2g| csm| 0ei| om0| sqc| o0u| kac| 0ke|