Skip to main content

moregeek program

三分钟带你初步了解Service Mesh开源实现之Istio架构-多极客编程

Istio中的关键概念 要学习Istio需要先明确以下几个关键术语。 1.容器/容器镜像 进入到云原生时代的服务网格架构,应用的发布、部署都是围绕Kubernetes为代表的容器基础设施展开的。这就需要对容器及容器镜像的概念有清晰的理解。 实际上,容器的普及要归功于Docker技术的流行,而从本质上说容器就是运行在操作系统中的,受资源隔离限制的一组进程,也称为“容器运行时”。它可以将用户打包

Read More

Nginx 架构到底有多牛-多极客编程

本文章转自:乐字节 文章主要讲解:Nginx 架构浅析 获取更多Java相关资料可以关注公众号《乐字节》 发送:999 1.Nginx 基础架构 nginx 启动后以 daemon 形式在后台运行,后台进程包含一个 master 进程和多个 worker 进程。如下图所示: nginx 是由一个 master 管理进程,多个 worker 进程处理工作的多进程模型。基础架构设计,如下图所示:

Read More

面试官:MySQL的幻读是怎么被解决的?-多极客编程

这篇文章主要是讲一下幻读是怎么被解决的 在此之前要了解一下什么是幻读什么是幻读?如下图所示然后前几天有位读者跟我说,我这个幻读例子不是已经被「可重复读」隔离级别解决了吗?为什么还要有 next-key 呢? 他有这个质疑,是因为他做了这个实验。 实验的数据库表 t_stu 如下,其中 id 为主键。然后在可重复读隔离级别下,有两个事务的执行顺序如下:从这个实验结果可以看到,即使事务

Read More

扒一扒面向对象编程的另一面-多极客编程

​​摘要:尽管有很多小伙伴对面向对象的概念已经很很熟了,但是到底什么是面向对象编程?面向对象有哪些特性?面向对象编程能够为我们带来哪些便利?面向对象又有哪些不足呢?本文分享自华为云社区​​《【云驻共创】被吹捧了很多年的面向对象编程真的就这么完美吗?》​​,作者: 冰 河 。说到面向对象,相信很多小伙伴都已经很熟悉了,毕竟像Java、C++这种编程语言长期排在编程语言榜的前列,而且几乎每一所大学的软

Read More

Java编程之伪共享与缓存行填充-多极客编程

最近在回顾Disruptor的相关知识,觉得Disruptor在计算机底层的领域确实比一般人厉害不少,以前在写程序的时候,基本是从应用逻辑的角度考虑,觉得设计模式+少量算法+ 优美的代码=理想的结果,但看完Disruptor的设计后,觉得只考虑应用本身是有一定的局限性,还需要懂底层,硬件层面的东西,就像Disruptor一样,通过底层优化,让程序有质的飞跃。下面就Disruptor提到的CPU缓存

Read More

10个Python绘画表白代码【内附源码,再不收藏你只能单身了】-多极客编程

发现一些很好玩的画图小项目,今天分享给大家,教你怎样用Python画一朵玫瑰花、时钟、爱心、太阳花、月饼、进阶自定义爱心、小猪佩奇、星空、超梦幻的蓝色背景樱花等大家快来学习吧。运行工具:pycharm 、python玫瑰花效果图: 源码:from turtle import *import timesetup(1000,800,0,0)speed(0)penup()seth(90)fd(340)s

Read More

❤超级详细万文零基础也能学的面向对象—没对象?new一个!-多极客编程

​ 面向对象(OOP)基本概念面向对象编程 —— Object Oriented Programming 简写 OOP 目标了解 面向对象 基本概念 面向对象基本概念 我们之前学习的编程方式就是面向过程 的 面相过程 和 面相对象,是两种不同的 编程方式对比 面向过程 的特点,可以更好地了解什么是面向对象 1.1 过程和函数(科普) 过程 是早期的一个编程概念过程 类似于函数,只能执行

Read More

开发的时候,人与人之间还是要少点儿信任之--注解方式防止重复请求-多极客编程

自定义注解方式防止前端同一时间多次重复提交 一、 前情提要 有这样一个业务,上课的时候老师给表现好的学生送小花花, 每节课都能统计出某个学生收到的花的总数。 按照产品需求,前端点击送花按钮后30秒内是不能再次送花的(信任的基础) (上课老师送花行为都进行统计了,可见互联网是多么可怕) 二、技术设计 2.1 库表设计 CREATE TABLE `t_student_flower` ( `id`

Read More

求你了,别再说数据库锁的只是索引了!!!-多极客编程

在MySQL数据库中,为了解决并发问题,引入了很多的锁机制,很多时候,数据库的锁是在有数据库操作的过程中自动添加的。 所以,这就导致很多程序员经常会忽略数据库的锁机制的真正的原理。比如,我经常在面试中会问候选人,你知道MySQL Innodb的锁,到底锁的是什么吗? 关于这个问题的回答,我听到过很多种,但是很少有人可以把他回答的很完美。因为想要回答好这个问题,需要对数据库的隔离级别、索引等都有一定

Read More

为什么MySQL数据库索引选择使用B+树?-多极客编程

在进一步分析为什么MySQL数据库索引选择使用B+树之前,我相信很多小伙伴对数据结构中的树还是有些许模糊的,因此我们由浅入深一步步探讨树的演进过程,在一步步引出B树以及为什么MySQL数据库索引选择使用B+树! 学过数据结构的一般对最基础的树都有所认识,因此我们就从与我们主题更为相近的二叉查找树开始。 一、二叉查找树 (1)二叉树简介: 二叉查找树也称为有序二叉查找树,满足二叉查找树的一般性质,是

Read More

Java线上故障排查不会怎么办,p8大佬总结的套路清单带你轻松玩转!-多极客编程

前言 线上故障主要会包括 CPU、磁盘、内存以及网络问题,而大多数故障可能会包含不止一个层面的问题,所以进行排查时候尽量四个方面依次排查一遍。同时例如 jstack、jmap 等工具也是不囿于一个方面的问题的,基本上出问题就是 df、free、top 三连,然后依次 jstack、jmap 伺候,具体问题具体分析即可。 CPU 一般来讲我们首先会排查 CPU 方面的问题。CPU 异常往往还是比较好

Read More

微服务 - 分布式事务 - 2PC、3PC-多极客编程

在微服务体系下,我们的应用被分割成多个服务,每个服务都配置一个数据库。如果我们的服务划分的不够完美,那么为了完成业务会出现非常多的跨库事务。即使按照 DDD 的原则来切分服务还是免不了有的业务场景需要多个业务同时提交成功或者同时回滚的场景。比如会员使用积分下订单这个场景,那么会员服务的积分扣减需要跟订单下单成功同时完成。如果下单成功,但是扣减积分接口失败,那么就会造成数据的不一致性。这个时候我们就

Read More

Hystrix服务监控-多极客编程

Hystrix服务监控 SpringCloud全家桶 学习目标   加入小编的Java学习交流君羊(785794074)暗号:67 Actuator   除了实现服务容错之外,Hystrix 还提供了近乎实时的监控功能,将服务执行结果和运行指标,请求数量成功数量等等这些状态通过 Actuator 进行收集,然后访问 /actuator/hystrix.stream 即可看到实时的监控数据。

Read More

Python如何入门,无偿分享学习方法,你想知道的都在这里了-多极客编程

在这个信息大爆炸的时代,Python几乎已经成为一项职场的基本技能,我看到越来越多的人利用Python实现高效工作,为了更好地找到工作,都会去尝试学习一下,但往往都因为自己没有基础被劝退了。 其实我觉得Python是很值得学一下的,现在在人工智能、机器学习、数据分析、网络爬虫方面都会用到Python,而且相比其他主流的编程语言,有着更好的可读性,所以对零基础的朋友们还是非常友好的。   话不多说

Read More

你知道怎么修改pycharm编辑器嘛?简单的四步教你搞定界面风格修改-多极客编程

教你配置属于自己的PYcharm界面色彩风格,PYthon学习必备 GO 第一步,换成深色背景,保护视力 PyCharm默认的背景是白色的,比较刺眼。还是换成深色的比较好,而且感觉比较酷一点。 修改方法:进入PyCharm,File >setting> Appearance&Behavior ==> Appearance,右侧找到Theme一项,换成Darcula。

Read More

Springboot集成JUnit5优雅进行单元测试-多极客编程

为什么使用JUnit5 JUnit4被广泛使用,但是许多场景下使用起来语法较为繁琐,JUnit5中支持lambda表达式,语法简单且代码不冗余。 JUnit5易扩展,包容性强,可以接入其他的测试引擎。 功能更强大提供了新的断言机制、参数化测试、重复性测试等新功能。 ps:开发人员为什么还要测试,单测写这么规范有必要吗?其实单测是开发人员必备技能,只不过很多开发人员开发任务太重导致调试完就不管了,

Read More

Jenkins for Kubernetes实现Slave动态伸缩-多极客编程

本文章案例可用于参考Jenkins for Kubernetes部署。因每个公司的架构和环境不一样,需要改变一些部署的方式。 Jenkins for Kubernetes的好处: Jenkins-Master的高可用。Kubernetes的RC或Deployment可以监控副本的存活状态(通过探针)和副本数量,如果Master出现无法提供服务的情况,就会重启或者迁移到其他节点。 Jenkins-S

Read More

某团面试题:hashCode 的值是怎么生成的?对象内存地址吗?-多极客编程

先看一个最简单的打印 System.out.println(new Object()); 会输出该类的全限定类名和一串字符串: java.lang.Object@6659c656 @符号后面的是什么?是 hashcode 还是对象的内存地址?还是其他的什么值? 其实@后面的只是对象的 hashcode 值,16进制展示的 hashcode 而已,来验证一下: Object o = new Ob

Read More

最新酷狗音乐反爬来袭,Python掌握酷狗排行榜加密规则-多极客编程

对你有用的话记得三连呦! 效果展示 爬取目标 网址:酷我音乐 工具使用 开发工具:pycharm 开发环境:python3.7, Windows10 使用工具包:requests,re 项目思路解析 找到需要解析的榜单数据 随意点击一个歌曲获取到音乐的详情数据 通过抓包的方式获取到音乐播放数据 找到MP3的数据提交地址 mp3数据来自于这个url地址 提交数据的网址: https://w

Read More

10分钟认识RocketMQ!想进阿里连这个都不会?-多极客编程

一、消息中间件简介 1.1、什么是什么MQ MQ(Message Queue)是一种跨进程的通信机制,用于传递消息。通俗点说,就是一个先进先出的数据结构。有点像队列。 1.2、MQ的应用场景 1.2.1、异步解耦 最常见的一个场景是用户注册后,需要发送注册邮件和短信通知,以告知用户注册成功。传统的做法如下: 此架构下注册、邮件、短信三个任务全部完成后,才返回注册结果到客户端,用户才能使用账号登

Read More