<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[非凡技术]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/j00105840</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; j00105840]]></copyright><item><title><![CDATA[Redis源码解析 - eventloop（redis调度的核心）]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/108183316</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/108183316</guid><author>j00105840</author><pubDate>Sun, 23 Aug 2020 16:32:38 +0800</pubDate><description><![CDATA[相信大家在很多关于Redis的文章里面都看过一句话：redis是单进程的，所以它不用考虑那么多多进程编程带来的麻烦。这话其实不完全正确。如果你读过Redis源码，你肯定知道，Redis存在一个主进程，同时还会有多个子进程。只是它的子进程通常是用于处理某个临时性的任务（比如RDB持久化过程、AOF的rewrite、主备之间的全同步等等，都是比较耗时的任务），一旦任务处理完就销毁了。

今天，我们要讨论的问题是，在这个主进程里面，它的调度核心 - eventloop。

写过C语言的都清楚，任何一个C语言程序的]]></description><category></category></item><item><title><![CDATA[Redis源码详解 - Replication（主备）流程]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/108002563</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/108002563</guid><author>j00105840</author><pubDate>Sun, 16 Aug 2020 00:09:45 +0800</pubDate><description><![CDATA[HA(高可用性)是数据库的最基本需求，而主备冗余则是HA最基础的解决方案。Redis里面，主备通常使用Master-Replica来表述。

通用主备方案的实现，涉及到以下几个关键问题：

主备感知：主备之间要建立某种关联（主备信令通道），并且要明确判断主备角色（主备裁决）。
	数据同步：
   首先要明确一点，主备之间的数据同步不是必须的，这取决于系统的HA的要求有多高。这又可以分为：热备（hot-standby）、冷备。先说冷备，备份节点不需要同步任何主节点的数据，待备升主之后，新的主节点再想办...]]></description><category></category></item><item><title><![CDATA[Redis源码思考 - Cluster节点之间的handshake]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/107941287</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/107941287</guid><author>j00105840</author><pubDate>Tue, 11 Aug 2020 20:19:30 +0800</pubDate><description><![CDATA[Redis支持Cluster，那么必然要有一个协议来支撑这些Cluster node之间进行状态数据同步。Redis采用了gossip，关于gossip，网上有很多文章，可以去搜来看。gossip的特点是去中心化，并且尽量减小信息扩散带来的网络消息爆炸。

我理解的gossip，是一种分布式系统状态同步（扩散）的实现思想，我只搜到了的各种文章都是些gossip实现的算法。我没有看到gossip的标准协议，所以Redis的gossip应该是基于gossip思想的私有协议。

好，回到正题。gossip的基础，]]></description><category></category></item><item><title><![CDATA[《最值得收藏的python3语法汇总》之装饰器]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/107061346</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/107061346</guid><author>j00105840</author><pubDate>Wed, 01 Jul 2020 12:31:32 +0800</pubDate><description><![CDATA[目录

关于这个系列

1、概念和原理

2、类装饰器

3、内置装饰器

@property

@staticmethod

@classmethod

@abstractmethod



关于这个系列

《最值得收藏的python3语法汇总》，是我为了准备公众号“跟哥一起学python”上面视频教程而写的课件。整个课件将近200页，10w字，几乎囊括了python3所有的语法知识点。

你可以关注这个公众号“跟哥一起学python”，获取对应的视频和实例源码。

这是我和几位老程序员一起维护的个人公.]]></description><category></category></item><item><title><![CDATA[《最值得收藏的python3语法汇总》之错误和异常]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/107061083</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/107061083</guid><author>j00105840</author><pubDate>Wed, 01 Jul 2020 12:22:27 +0800</pubDate><description><![CDATA[目录

关于这个系列

1、定义

2、处理异常

3、清理行为

4、自定义异常

关于这个系列

《最值得收藏的python3语法汇总》，是我为了准备公众号“跟哥一起学python”上面视频教程而写的课件。整个课件将近200页，10w字，几乎囊括了python3所有的语法知识点。

你可以关注这个公众号“跟哥一起学python”，获取对应的视频和实例源码。

这是我和几位老程序员一起维护的个人公众号，全是原创性的干货编程类技术文章，欢迎关注。



1、定义

大家需要知道一个事实，那就是，在一个正式.]]></description><category></category></item><item><title><![CDATA[Python基础语法视频教程全39集，历时1个多月终于更新完毕，需要的拿走！]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/107039415</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/107039415</guid><author>j00105840</author><pubDate>Tue, 30 Jun 2020 11:52:34 +0800</pubDate><description><![CDATA[我应该是在4月底5月初的时候，说我准备录制一个python的教学视频。

			我坚持了一个多月，每天晚上9点准时更新一集，从未断过。
			截止上上周，全部39集python基础语法系列更新完毕。

			完整教程目录
			

			
			免费视频教程！零基础学Python系列(1) - python简介
			免费视频教程！零基础学Python系列(2) - 运行第一个python程序
			免费视频教程！零基础学Python系列(附1) - 手把手教你搭建python开发学习环境
			...]]></description><category></category></item><item><title><![CDATA[用python开发简单的五子棋游戏 -  附完整源码]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106925374</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106925374</guid><author>j00105840</author><pubDate>Tue, 23 Jun 2020 16:03:02 +0800</pubDate><description><![CDATA[相信跟我学完了Python语法的同学《零基础学Python视频教程系列》，已经迫不及待的想一展身手了吧？

后续我会给大家录制大量的实战案例教学视频，都是非常实用非常有意思的一些案例。

我希望通过这些案例的实操，能让大家去熟悉一些常用的python库，更重要的是，你能掌握如何快速去发现一个库并且使用它的方法。这正是我想达到的目标：授人以鱼不如授人以渔！

Python如此博大精深，岂是我辈能学完的？够用就行！会用就行！



首先给大家带来的，是一个很熟悉的游戏-五子棋。相信大家都玩过，可是有人想过要自.]]></description><category></category></item><item><title><![CDATA[《最值得收藏的python3语法汇总》之面向对象编程 - 完整版]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106783531</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106783531</guid><author>j00105840</author><pubDate>Tue, 16 Jun 2020 11:32:54 +0800</pubDate><description><![CDATA[目录

关于这个系列

1、POP和OOP

2、类的定义语法

3、类对象

属性引用

类的实例化

实例对象

4、类变量和实例变量

5、继承

概念

多重继承

方法重写

理解super

Isinstance和issubcass

6、多态

7、成员可见范围

8、迭代器

9、生成器

关于这个系列

《最值得收藏的python3语法汇总》，是我为了准备公众号“跟哥一起学python”上面视频教程而写的课件。整个课件将近200页，10w字，几乎囊括了python3所有的语法知识点。

你]]></description><category></category></item><item><title><![CDATA[《最值得收藏的python3语法汇总》之命名空间和作用域]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106783513</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106783513</guid><author>j00105840</author><pubDate>Tue, 16 Jun 2020 11:17:15 +0800</pubDate><description><![CDATA[关于这个系列

《最值得收藏的python3语法汇总》，是我为了准备公众号“跟哥一起学python”上面视频教程而写的课件。整个课件将近200页，10w字，几乎囊括了python3所有的语法知识点。

你可以关注这个公众号“跟哥一起学python”，获取对应的视频和实例源码。

这是我和几位老程序员一起维护的个人公众号，全是原创性的干货编程类技术文章，欢迎关注。

命名空间（namespace）是对符号（变量、函数、类等等）名字的一种分组机制，它提供了在项目中避免名字冲突的一种方法。不同组的相同命名符号被视]]></description><category></category></item><item><title><![CDATA[《最值得收藏的python3语法汇总》之模块与包机制]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106730601</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106730601</guid><author>j00105840</author><pubDate>Sat, 13 Jun 2020 12:39:04 +0800</pubDate><description><![CDATA[目录

关于这个系列

1、组织你的代码

2、Import导入模块

三种导入方式

__name__的作用

搜索路径

循环导入问题

3、构造包

4、Import导入包

5、预编译的模块



关于这个系列

《最值得收藏的python3语法汇总》，是我为了准备公众号“跟哥一起学python”上面视频教程而写的课件。整个课件将近200页，10w字，几乎囊括了python3所有的语法知识点。

你可以关注这个公众号“跟哥一起学python”，获取对应的视频和实例源码。

这是我和几位老程序员一起.]]></description><category></category></item><item><title><![CDATA[《最值得收藏的python3语法汇总》之标准数据类型(超级完整版)]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106362745</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106362745</guid><author>j00105840</author><pubDate>Tue, 26 May 2020 19:14:17 +0800</pubDate><description><![CDATA[目录

关于这个系列

该系列其它文章

概述

Number（数字）

Int

Float

Complex

Bool

String（字符串）

转义字符

截取

分割

连接

替换

查找

格式化输出

​​​​​​​其它常用操作

Bytes

字节序

字符编码

Bytes和string之间的转换

List（列表）

Tuple（元组）

​​​​​​​Dictionary（字典）

了解hash结构：

字典和列表的区别

深复制和浅复制

Set（集合）

可变数据类型和不可变数]]></description><category></category></item><item><title><![CDATA[Springboot中数据库访问的两种方式之-JdbcTemplate]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106339650</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106339650</guid><author>j00105840</author><pubDate>Mon, 25 May 2020 18:54:43 +0800</pubDate><description><![CDATA[目录



01、写在前面

02、项目依赖

03、创建模型脚本

04、读取数据库

05、Controller

06、开始测试

本文由bingo创作，授权我原创发布。

Tiger和他朋友们的原创技术文章，请关注wx “跟哥一起学python”，ID “tiger-python”。不止Python！！

在大多数的项目开发中，我们都有把数据存入数据库和从数据库中读取的操作，所以与数据库打交道是必不可少的。

众所周知，spring提供了很多工具，我们拿来就可以用，使我们的项目开发更方便、快捷（..]]></description><category></category></item><item><title><![CDATA[《最值得收藏的python3语法汇总》之控制语句]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106321513</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106321513</guid><author>j00105840</author><pubDate>Sun, 24 May 2020 21:54:08 +0800</pubDate><description><![CDATA[目录

1、条件控制语句

python的缩进规则

实例1：

实例2

实例3

2、循环控制语句

for语句

range构造整数序列

while语句

条件语句和循环语句的相互嵌套

continue和break

3、推导式

列表推导式

​​​​​​​字典推导式

​​​​​​​集合推导式



“数据”和“逻辑”是编程的两个基本核心问题，高级编程语言的语法就是围绕这两个问题展开的。前面我们讲的数据类型，就是解决“数据”的表达和处理问题。这一节我们要开始学习python语法中的控制语句，.]]></description><category></category></item><item><title><![CDATA[《最值得收藏的python3语法汇总》之函数机制]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106208430</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106208430</guid><author>j00105840</author><pubDate>Tue, 19 May 2020 10:38:51 +0800</pubDate><description><![CDATA[目录

1、什么是“函数”

2、函数的语法

2.1、语法定义

2.2、形参与实参

2.3、值传递和引用传递

2.4、必选参数和可选参数

2.5、位置参数和关键字参数

2.6、变长参数

2.7、解包参数列表

3、lambda

4、嵌套和闭包

本文有视频讲解，视频和实例源码下载方式：点击-&gt;我的主页，查看个人简介。

我尽量坚持每日更新一节。

更多python教程，请查看我的专栏《0基础学python视频教程》



1、什么是“函数”

前面我们讲过，所谓“程序”，就是通过逻辑.]]></description><category></category></item><item><title><![CDATA[《最值得收藏的python3语法汇总》之运算符]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106188558</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106188558</guid><author>j00105840</author><pubDate>Mon, 18 May 2020 11:02:34 +0800</pubDate><description><![CDATA[目录

1、算术运算符

2、比较（关系）运算符

3、赋值运算符

​​​​​​​4、逻辑运算符

​​​​​​​5、位运算符

​​​​​​​6、成员运算符

​​​​​​​7、身份运算符

​​​​​​​8、运算符优先级



Python3支持多种运算符，包括：

算术运算符
	比较（关系）运算符
	赋值运算符
	逻辑运算符
	位运算符
	成员运算符
	身份运算符
	运算符优先级
下面我们分别介绍。





1、算术运算符

算术运算符定义了数学上常用的几种运算符，如下表所示：


			运...]]></description><category></category></item><item><title><![CDATA[免费视频教程！零基础学Python系列(14) - 动态类型和静态类型]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106188438</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106188438</guid><author>j00105840</author><pubDate>Mon, 18 May 2020 10:48:56 +0800</pubDate><description><![CDATA[本节我们接着讲动态类型和静态类型：

这个系列教程建议对照着视频学习，以下仅为课件内容。

本节课程的视频和实例源码下载方式：点击-&gt;我的主页，查看个人简介。

我尽量坚持每日更新一节。

编程语言从代码到能够运行通常需要经过编译和运行两个阶段，Python虽然是解释性语言，也不例外。源码.py通过编译，生成字节码文件.pyc。.pyc是一系列指令，这些指令通过python虚拟机PVM来执行。





我们根据检查变量数据类型的时机，将编程语言分为动态类型语言和静态类型语言。

静态类型：在编译阶.]]></description><category></category></item><item><title><![CDATA[免费视频教程！零基础学Python系列(13) - 可变数据类型和不可变数据类型]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106188319</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106188319</guid><author>j00105840</author><pubDate>Mon, 18 May 2020 10:46:09 +0800</pubDate><description><![CDATA[本节我们接着讲可变数据类型和不可变数据类型：

这个系列教程建议对照着视频学习，以下仅为课件内容。

本节课程的视频和实例源码下载方式：点击-&gt;我的主页，查看个人简介。

我尽量坚持每日更新一节。

前面我们的学习中其实已经涉及到可变数据类型和不可变数据类型的概念了，这一节我们总结一下。

python的数据类型分为mutable（可变） 和 immutable （不可变）：

mutable包括list、dictionary、set
	immutable包括 number、string、bytes、]]></description><category></category></item><item><title><![CDATA[免费视频教程！零基础学Python系列(12) - 数据类型之集合]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106118125</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106118125</guid><author>j00105840</author><pubDate>Thu, 14 May 2020 13:32:18 +0800</pubDate><description><![CDATA[本节我们接着讲集合（Set）类型：

这个系列教程建议对照着视频学习，以下仅为课件内容。

本节课程的视频和实例源码下载方式：点击-&gt;我的主页，查看个人简介。

我尽量坚持每日更新一节。

在python中，集合是一个无序的不可重复的元素组合，它是不是和前面介绍的字典的key值很像呢？集合的语法如下：



{item1, item2, item3,…} 或者 set(iterable)



集合中的元素必须保证唯一，不可重复。

对于空集合，必须使用set()来创建，而不是使用{}，因为这对应的是]]></description><category></category></item><item><title><![CDATA[《最值得收藏的python3语法汇总》之数据类型转换]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106039551</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106039551</guid><author>j00105840</author><pubDate>Sun, 10 May 2020 18:25:51 +0800</pubDate><description><![CDATA[整理了最全最新的python数据类型转换规则和方法，可以收藏当手册使用。]]></description><category></category></item><item><title><![CDATA[免费视频教程！零基础学Python系列(11) - 数据类型之字典]]></title><link>https://blog.youkuaiyun.com/j00105840/article/details/106025357</link><guid>https://blog.youkuaiyun.com/j00105840/article/details/106025357</guid><author>j00105840</author><pubDate>Sat, 09 May 2020 18:30:21 +0800</pubDate><description><![CDATA[本节我们接着讲字典（Dictionary）类型：

这个系列教程建议对照着视频学习，以下仅为课件内容。

本节课程的视频和实例源码下载方式：点击-&gt;我的主页，查看个人简介。

我尽量坚持每日更新一节。

字典，也是Python中使用得比较广泛的一种数据类型。

字典本质上是一种“键值对”（key-value）的集合。“键值对”这种数据的描述方式，更加符合我们对客观世界的认识。客观世界的数据，通常都存在一个名字-key，以及对应的值-value，使用“键值对”可以非常直观简便地表达这些数据。一些数据库技]]></description><category></category></item></channel></rss>