自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 FastDFS原理介绍及集群搭建

1.简介FastDFS开源地址:happyfish100 (YuQing) · GitHubFastDFS 是一个开源的高性能分布式文件系统(DFS)。 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡。主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务。FastDFS 系统有三个角色:跟踪服务器(Tracker Server)、存储服务器(Storage Server)和客户端(Client)

2021-10-14 17:09:07 1002

原创 一个非常值得收藏的网站

对于每天看新闻的人来说,这个网站值得收藏: http://www.todayhot.club

2020-09-11 16:12:06 831

原创 推荐几个好网站

算法可视化网站:https://visualgo.net/en,通过动画展示算法实现过程程序可视化网站:http://www.pythontutor.com/visualize.html#mode=edit,可视化程序实现过程今日热门:https://todayhot.club/,实时查看每日各大网站的咨询内容,一个网站知天下LeetCode:https://leetcode.com/,不用介绍了,目前已有中文版MindHacks:http://mindhacks.cn/,刘未鹏博客Co

2020-08-05 19:17:50 2197

原创 推荐几个好的网站

网站/论坛:CSDN网址:http://www.csdn.net介绍:由《程序员》杂志社主办,集新闻动态、技术文档、论坛一体的大型综合技术网站,涉及大多数主流的编程语言。内容以初、中级为主流,面向大多数人的网站。论坛:java视线论坛网址:forum.javaeye.com介绍:讨论Java和企业开发的高端论坛,管理极其严格(甚于联盟),主要是上海和北京那一帮大牛在上面活动。应该是目前国内讨论Java和企业开发方面水平最高的地方。论坛:AllAboutProgram网址:www..

2020-08-05 14:07:46 7563

原创 Myisam和Innodb索引的区别从存储结构

myisam和innodb索引实现的不同MyISAM引擎使用B+Tree作为索引结构,叶节点的data域存放的是数据记录的地址。下图是MyISAM索引的原理图:这里设表一共有三列,假设我们以Col1为主键,则上图是一个MyISAM表的主索引(Primary key)示意。可以看出MyISAM的索引文件仅仅保存数据记录的地址。在MyISAM中,主索引和辅助索引(Seconda...

2020-03-20 10:02:25 134

转载 关于hashmap的深入-hashmap产生死锁的详解

前言几个月前,上线了一个版本。但是上线了几个小时之后 CPU 突然暴增至99%,在网上搜了一下,多半是因为出现死循环问题了。就用 jstack dump 了当时的线程快照,发现这次死循环问题的起源是 HashMap 的 get()方法。之后先是迅速重启了服务,这样可以让服务先运行一段时间。然后立即修复了这个 bug并提交到 SVN。这次事故的原因是因为开发时没有注意到 HashMap 是非线...

2020-03-12 11:45:38 949

转载 一致性Hash算法原理

一、前言在解决分布式系统中负载均衡的问题时候可以使用Hash算法让固定的一部分请求落到同一台服务器上,这样每台服务器固定处理一部分请求(并维护这些请求的信息),起到负载均衡的作用。但是普通的余数hash(hash(比如用户id)%服务器机器数)算法伸缩性很差,当新增或者下线服务器机器时候,用户id与服务器的映射关系会大量失效。一致性hash则利用hash环对其进行了改进。二、一致性Ha...

2020-02-26 22:49:15 608

原创 缓存穿透、缓存击穿、缓存雪崩区别及其解决方案

一、缓存处理流程前台请求,后台先从缓存中取数据,取到直接返回结果,取不到时从数据库中取,数据库取到更新缓存,并返回结果,数据库也没取到,那直接返回空结果。二、缓存穿透描述:缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很可能是攻击者,攻击会导...

2020-02-26 22:44:43 196

原创 java单例模式的实现方式

单例模式的六种实现方式,代码注释比较详细,不多说,请看详细代码一、饿汉模式/立即加载模式/** * Created by Xiao GuoJian on 2018/1/25. * 立即加载/饿汉模式 * 此模式是在类被加载的时候对象已经被创建,不管有没有使用,都创建了 * 此模式是线程安全的 */public class Singleton1 { private sta

2018-01-25 17:47:33 348

原创 多线程实例三----多生产者多消费者(模拟kfc多生产和多消费)

KFC中,同时有多个产者生产汉堡,也有多个消费者消费汉堡,当生产到100个剩余时,就暂停生产;当销售到0个时,就暂停销售。此例子就是简单的多生产和多消费问题,跟有些多生产多消费例子不同的是其他的基本上是生产一个汉堡就唤醒消费者消费,生成一个消费一个;而在本例子中生产者和消费者则互不影响,只是达到设置的极限条件之后才唤醒。本例子使用了三种实现方式,分别为简单多线程实现、用线程池实现、用jdk1.

2018-01-25 10:13:38 2441

原创 多线程实例二----两个人同时存取钱

java 多线程简单实例二----两个人同一个账户取钱思路:两个线程,一个代表取钱的操作,一个代表存钱的操作,互相不影响,但是要保证存取的数据正确。代码如下:package com.shone.thread.getmoney;/** * Created by Xiao GuoJian on 2018/1/24. * 两个人用同一个账户在取钱 */class Bank{

2018-01-25 09:59:39 6688

原创 多线程实例一----三个窗口同时卖票

package com.shone.thread.ticket;/** * Created by Xiao GuoJian on 2018/1/24. * 三个窗口同时卖票 *//** * 票 */class Ticket { private int count = 1; public void sale(){ while (true) {

2018-01-25 09:54:32 6813 5

转载 SpringMVC中使用Interceptor拦截器

SpringMVC中的Interceptor拦截器也是相当重要和相当有用的,它的主要作用是拦截用户的请求并进行相应的处理。比如通过它来进行权限验证,或者是来判断用户是否登陆,或者是像12306那样子判断当前时间是否是购票时间。   一、定义Interceptor实现类   SpringMVC中的Interceptor拦截请求是通过HandlerInterceptor来实现的。在Spring

2016-03-21 16:20:17 371

转载 IOS中Json解析的四种方法

作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式。有的json代码格式比较混乱,可以使用此“http://www.bejson.com/”网站来进行JSON格式化校验(点击打开链接)。此网站不仅可以检测Json代码中的错误,而且可以以视图形式显示json中的数据内容,很是方便。从IOS5开始,APPLE提供了对json的原生支持(NSJSONSerialization

2015-12-05 10:24:31 692

转载 Linux unison+inotify 文件实时双向同步

一:Unison简介 Unison是windows和unix平台下都可以使用的文件同步工具,它能使两个文件夹(本地或网络上的)保持内容的一致。Unison有文字界面和图形界面,这里只介绍如何在文字界面下使用. unison拥有其它一些同步工具或文件系统的相同特性,但也有自己的特点: 跨平台使用; 对内核和用户权限没有特别要求; unison是双向的,它能自动处理两分拷

2015-10-10 15:04:31 1888

原创 UILabel添加点击事件

为UILable添加点击事件,首先必须设置UILabel的userInteractionEnabled = YES,添加的点击事件才会有效,否则无效。 首先设置label1和label2两个属性,这里label1的点击原理是判断点击的坐标是否在label1的范围内,如果在范围内的话就变蓝色,否则变红色,label1的代码被注释了,为了测试label2。 label2是直接给label2添加单击事

2015-09-14 21:31:43 6956

转载 初探nginx架构

初探nginx架构(100%)众所周知,nginx性能高,而nginx的高性能与其架构是分不开的。那么nginx究竟是怎么样的呢?这一节我们先来初识一下nginx框架吧。nginx在启动后,在unix系统中会以daemon的方式在后台运行,后台进程包含一个master进程和多个worker进程。我们也可以手 动地关掉后台模式,让nginx在前台运行,并且通过配置让nginx取消master进程,从而

2015-07-15 22:21:31 750

原创 阿里云配置nginx多域名指向

我的阿里云默认在服务器的/alidata/server/nginx中;因为nginx中的conf文件夹中的nginx.conf文件配置默认指向的是vhosts文件夹下的所有*.conf文件都有效,所有只要复制default.conf文件,并且修改文件中的内容即可,具体内容如下: 1、到/alidata/server/nginx/conf/vhosts文件夹下 cd /alidata/

2015-07-15 22:18:45 2384 2

原创 Mac终端中上传文件到Linux服务器

Mac将本地文件上传到服务器上scp -P 22 /Java/program.war root@123.456.789.987:/usr/server/tomcat7/webapps/上端口大写P 为参数,22 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。 /Java/program.war表示本地上准备上传文件的路径和文件名。root@123.456.789.987 表

2015-07-15 22:15:25 38084

原创 linux下mysql的root密码忘记解决方法

1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对 外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全 状态。最安全的状态是到服务器的Console上面操作,并且拔掉

2015-07-15 22:09:30 318

原创 Fedora(Linux)中配置mondodb数据库

1.下载mongodb数据库 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.3.tgz2.解压文件 tar -p /usr/local -xvf mongodb-linux-x86_64-3.0.3.tgz 其中-p /usr/local是解压文件到指定路径3.启动mongodb (1)如果运行默认的数据文

2015-07-15 22:05:51 512

原创 mongodb备份数据库

mongodb备份还原数据库1,常用命令格式mongodump -h IP –port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径 如果没有用户谁,可以去掉-u和-p。 如果导出本机的数据库,可以去掉-h。 如果是默认端口,可以去掉–port。 如果想导出所有数据库,可以去掉-d。2,导出所有数据库[root@localhost mongodb]# mongodump

2015-07-15 22:01:33 410

原创 用NSFileHandle实现每次定量读取一个大文件

如果一个文件相对来说比较大的话,一次性读取的话势必会占很大的内存,因此可以考虑分次读取,每次只读取少部分的内容。int main(int argc, const char * argv[]) { @autoreleasepool { NSString *homePath = NSHomeDirectory(); NSString *srcPath = [home

2015-03-05 17:15:21 640

原创 用NSFileHandle实现文件的断点续传

断点续传:复制或者下载一个文件到某一个位置停止,下次接着原来的部分下载//复制一个文件中的指定的内容到另外一个文件中void copyFileContentToAnotherFileUnderControl(){ NSString *homePath = NSHomeDirectory(); NSString *srcPath = [homePath stringByAppendi

2015-03-05 17:10:35 504

原创 oc中NSFileHandle的初学-文件读取

1、NSFileHandle是oc中用来操作文件的类,通过此类可以读写文件,可以断点续传。2、NSFileHandle类中常用的方法//文件中的全部内容(有效数据,包括空格和汉字,其中空格在一个字节,汉字占三个字节)@property (readonly, copy) NSData *availableData;//读取文件中的全部内容- (NSData *)readDataToEndOfF

2015-03-05 17:07:26 700

原创 IOS基础:深入理解Objective-c中@class和#import的使用区别

objective-c中,当一个类使用到另一个类时,并且在类的头文件中需要创建被引用的指针时, 如下面代码: A.h文件#import "B.h"    @interface A : NSObject {         B *b;   }   @end   为了简单起见:A类是引用类,B类是被引用类,这里先不考虑A类的实现文件。 通常引用一个类有两

2015-01-15 10:18:35 413

原创 第一个C语言程序

用Xcode写了我的第一个c语言程序bu

2014-10-14 21:22:26 554

原创 初学使用HttpURLConnection访问网络之发送GET请求

初学使用HttpURLConnection访问网路之get方法

2014-06-09 23:53:30 608

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除