<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ywbbbbb的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ywbbbbb</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ywbbbbb]]></copyright><item><title><![CDATA[Kafka安装、配置与调优]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/132193650</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/132193650</guid><author>ywbbbbb</author><pubDate>Wed, 09 Aug 2023 17:50:22 +0800</pubDate><description><![CDATA[而Linux中页是高速缓存的单位，当进程应用修改了高速缓存中的页数据时，该内存就会被标记为脏页（因为内存中的数据和磁盘中不一致），直至合适的时候将脏页的数据写入磁盘，以保持高速缓存中的数据和磁盘的一致。而G1垃圾收集器会有有着比CMS更高的内存占用，所以在切换Kafka的垃圾收集器前，先确保Kafka的堆内存至少能够分配4GB的大小，否则或许使用CMS能够以更低的内存开销获得更高的性能。中的日志保留的大小，当分区下的日志文件超过这个大小的时候，超过这个大小的日志文件会被清除。]]></description><category></category></item><item><title><![CDATA[Maven版本管理：使用单个属性来管理项目所有模块的版本号]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/130756006</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/130756006</guid><author>ywbbbbb</author><pubDate>Thu, 18 May 2023 21:47:20 +0800</pubDate><description><![CDATA[单个项目下维护不存在什么困难，但是如果存在着多个子项目，那么每个子项目中都会有固定的父项目的版本引用，一旦改动，就需要改动所有的pom.xml。在开发过程中，我们总是要对项目进行不断的迭代升级，而在Maven的版本控制中，我们可以通过不同的版本号，来将不同版本的项目打包放于同样的地方。本章节将讲解如何使用单个变量来集中一个由Maven组成的多模块项目的版本号。通过revision变量，你可以通过修改一处的值来升级整个项目的版本号。也许你可以通过全局替换来升级版本号，但是有没有更好的办法呢？]]></description><category></category></item><item><title><![CDATA[MySQL_sysbench基准测试]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/127693732</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/127693732</guid><author>ywbbbbb</author><pubDate>Fri, 04 Nov 2022 17:49:49 +0800</pubDate><description><![CDATA[你真的了解的你MySQL吗？基准测试是我们了解MySQL所要掌握的必备技能之一，而sysbench是一款多线程的性能测试工具。使用它我们就能够对MySQL的读写QPS有一个非常好的了解。]]></description><category></category></item><item><title><![CDATA[如何保证缓存和数据库的一致性问题？]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/127593995</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/127593995</guid><author>ywbbbbb</author><pubDate>Sat, 29 Oct 2022 23:27:14 +0800</pubDate><description><![CDATA[为什么要引入缓存？

因为数据库是持久化于磁盘中的，而缓存一般是存放于内存中。操作系统对于磁盘的读写性能是只能够达到毫秒级，远不如内存的纳秒级别。

如果使用了缓存来分担数据库的读取操作，尤其是对于写频繁的应用来说，提升是十分的显著的。]]></description><category></category></item><item><title><![CDATA[每个人都应该会的设计模式—策略模式详解]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/122264333</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/122264333</guid><author>ywbbbbb</author><pubDate>Sat, 01 Jan 2022 00:41:06 +0800</pubDate><description><![CDATA[策略模式是最常用的设计模式之一，尤其是在消除if-else语句时，总是能够看到策略模式的身影。它将一组行为转化为对象，使其能够在原始上下文对象内部能够相互替换]]></description><category></category></item><item><title><![CDATA[深入CI工具Jenkins插件篇-基于角色的权限分配]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/122006935</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/122006935</guid><author>ywbbbbb</author><pubDate>Fri, 17 Dec 2021 23:57:06 +0800</pubDate><description><![CDATA[本篇文章将介绍Jenkins中非常实用的工具之一`Role-based Authorization Strategy`从简单的安装插件到详细的介绍该插件中的一些实用方法。]]></description><category></category></item><item><title><![CDATA[Jeecg如何实现数据权限/隔离？用户上下文变量没有user_id？修改源码]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/121570807</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/121570807</guid><author>ywbbbbb</author><pubDate>Fri, 26 Nov 2021 23:47:14 +0800</pubDate><description><![CDATA[前言：
在使用如若依、Jeecg等后台管理系统进行二次开发的时候，我们总会涉及到数据隔离相关的内容，如每个非管理员用户应该都只能看到自己创建的数据，而不是所有的数据，本文将以jeecg为例像大家介绍如何每个用户之间的数据隔离的效果。
先从功能需求说起，当查询房屋列表的时候，每个房东（用户）应该只能看到自己的房屋(house)表数据，而房屋和房东的关系存放于房东（house_holder）表中，所以我们需要通过两个表的关联来实现数据隔离的查询。而jeecg中要如何实现呢？我们一起啦看看吧
基于Jeecg实现：]]></description><category></category></item><item><title><![CDATA[项目实践（一）uni-app的微信授权登录/注册]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/121483006</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/121483006</guid><author>ywbbbbb</author><pubDate>Mon, 22 Nov 2021 22:59:29 +0800</pubDate><description><![CDATA[前言：
本文章将讨论如何实现目前小程序中普遍的微信授权获取用户信息进行登录/注册（当未注册的时候直接进行注册并登录）
API
我们先看看uni-app和微信小程序中为我们提供的几个API：

wx.login / uni.login: 获取临时登录凭证code，通过微信接口服务获取openId

https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html
https://uniapp.dcloud.io]]></description><category></category></item><item><title><![CDATA[通过docker配置密码、持久化的redis]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/121433464</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/121433464</guid><author>ywbbbbb</author><pubDate>Sat, 20 Nov 2021 00:17:38 +0800</pubDate><description><![CDATA[前言
之前服务器买了之后，使用docker跑了一个Redis实例之后就放在那边不管了，直到前段时间发现Redis会莫名的删除所有的key值，可能是被黑掉了- - 于是有了这篇文章，希望通过docker来简单的配置一个有密码保护的，可持久化的Redis。
步骤


首先，我们在/usr/local/下创建一个redis文件夹，用于存放redis的配置文件和数据
mkdir /usr/local/redis
mkdir /usr/local/redis/data
touch /usr/local/redis/r]]></description><category></category></item><item><title><![CDATA[Redis的持久化原理到底是什么样的？简单的告诉你们]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/121345321</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/121345321</guid><author>ywbbbbb</author><pubDate>Mon, 15 Nov 2021 22:34:58 +0800</pubDate><description><![CDATA[本文内容为作者读老钱的《Redis深度历险》的笔记摘抄，这是一本非常值得读的Redis书籍。
前言
Redis的持久化是使Redis的热度超过Memcached的关键因素之一。因为其我们享受了内存带来的高性能I/O，也让我们能够保证数据不会因为Redis的故障而丢失。
持久化机制
Redis的持久化机制有两种：RDB（快照）和AOF日志。RDB是一次性全量备份，而AOF日志是连续的增量备份。前者是内存数据的二进制格式，而后者是记录内存数据修改的记录文本。所以AOF日志的备份文件会比RDB大得多，于是需要定期]]></description><category></category></item><item><title><![CDATA[分开输出整数]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/103981645</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/103981645</guid><author>ywbbbbb</author><pubDate>Tue, 14 Jan 2020 23:29:58 +0800</pubDate><description><![CDATA[#include&lt;stdio.h&gt;
int main(){
int x;
scanf("%d", &amp;x);
int n=1;
int t = x;
while(t&gt;9){
    n *= 10;
    t /=  10;
}
printf("x=%d,mask=%d\n", x, n);

do{
    int d=x/n;
    printf("%d", d);...]]></description><category></category></item><item><title><![CDATA[求最大公约数（辗转相除法）]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/103978873</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/103978873</guid><author>ywbbbbb</author><pubDate>Tue, 14 Jan 2020 19:55:24 +0800</pubDate><description><![CDATA[算法：如果b等于0，计算结束，a就是最大公约数；
否则，计算a除以b的余数t，让a等于b，b等于t；
回到第一步。
#include&lt;stdio.h&gt;

int main(){
    int a,b;
    int t;
    
    scanf("%d %d", &amp;a, &amp;b);
    while (b != 0){
        t = a % b ;
...]]></description><category></category></item><item><title><![CDATA[前n项求和]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/103978559</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/103978559</guid><author>ywbbbbb</author><pubDate>Tue, 14 Jan 2020 19:51:07 +0800</pubDate><description><![CDATA[#include&lt;stdio.h&gt;

int main(){
    int n;
    int i;
    double sum = 0.0;
    double sign = 1.0;//关键点：用一个sign来改变符号的同时当分子。
    
    scanf("%d", &amp;n);
    for ( i=1; i&lt;=n; i++ ){
        su...]]></description><category></category></item><item><title><![CDATA[猜谜游戏，随机数]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/103978414</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/103978414</guid><author>ywbbbbb</author><pubDate>Tue, 14 Jan 2020 19:21:23 +0800</pubDate><description><![CDATA[猜谜游戏（随机数）

#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;time.h&gt;

int main(){
    srand(time(0));
    int number = rand()%100+1;
    int count = 0;
    int a;
    
    do{
        sc...]]></description><category></category></item><item><title><![CDATA[转移字母]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/103951943</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/103951943</guid><author>ywbbbbb</author><pubDate>Mon, 13 Jan 2020 01:53:51 +0800</pubDate><description><![CDATA[转移字母
void Shift( char s[] ){
    int i, j, len = strlen(s);

    for (i=0; i&lt;3; i++){
        char t=s[0];
        for (j=1; j&lt;len; j++){
            s[j-1] = s[j];
        }
        s[len-1] = ...]]></description><category></category></item><item><title><![CDATA[PTA题库 查找字串]]></title><link>https://blog.youkuaiyun.com/ywbbbbb/article/details/103951619</link><guid>https://blog.youkuaiyun.com/ywbbbbb/article/details/103951619</guid><author>ywbbbbb</author><pubDate>Mon, 13 Jan 2020 01:24:00 +0800</pubDate><description><![CDATA[查找子串
本题要求实现一个字符串查找的简单函数。
函数接口定义：
char *search( char *s, char *t );

函数search在字符串s中查找子串t，返回子串t在s中的首地址。若未找到，则返回NULL。
裁判测试程序样例：
#include &lt;stdio.h&gt;
#define MAXS 30

char *search(char *s, char *t);
v...]]></description><category></category></item></channel></rss>