摘要:
copy: http://www.voycn.com/article/synchronizedxiangxijieshaozhisuoshengjiguocheng 前言 我们在并发编程过程中,会有一些资源或者操作是必须要进行序列化访问的,就是线程之间不能并发的访问,必须要进行串行访问,所以就引入了 阅读全文
摘要:
待完善 阅读全文
摘要:
一、FastDFS概述: FastDFS是一个开源的轻量级分布式文件系统,他对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、下载)等,解决了大容量存储和负载均衡的问题,高度追求高性能和扩展性。特别适合以文件为载体的在线服务,如相册万盏、视频网站等等。 FastDFS是由纯C语言实现 阅读全文
摘要:
Numpy是什么 Numpy是一个开源的Python科学计算库。使用Numpy,就可以很自然地使用数组和矩阵。Numpy包含很多实用的数学函数,涵盖线性代数运算、傅里叶变换和随机数生成等功能。 矩阵: 在数学中,矩阵是一个按照长方阵列排列的复数或实数集合,最早来自于方程组的系数及常数所构成的方阵。 阅读全文
摘要:
什么是 ShardingSphere? 1、一套开源的分布式数据库中间件解决方案 2、有三个产品:Sharding-JDBC 和 Sharding-Proxy 3、定位为关系型数据库中间件,合理在分布式环境下使用关系型数据库操作 什么是分库分表 1、数据库数据量不可控的,随着时间和业务发展,造成表里 阅读全文
摘要:
待完善 阅读全文
摘要:
为什么学习scala语言 Scala是基于JVM的语言,与java语言类似,java语言是基于JVM的面向对象的语言,Scala也是基于JVM,同时支持面向对象和面向函数的编程语言。Spark底层的源码的编写语言就有Scala语言。 Scala官网6大特性 1、Java和Scala可以混编 2、类型 阅读全文
摘要:
一、为什么会有分布式锁? 在多线程环境下,由于上下文的切换,数据可能出现不一致的情况或者数据被污染,我们需要保证数据安全,所以想到了加锁。 所谓的加锁机制呢,就是当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问,直到该线程读取完,其他线程才可使用。 我们为了减少DB的压力,把库存预热到 阅读全文
摘要:
Zookeeper是什么 ZooKeeper是一个开放源码的分布式协调服务,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户。 分布式应用程序可以基于Zookeeper实现诸如数据发布/订阅、负载均衡、命名服 阅读全文
摘要:
为什么要引入线程池当我们需要的并发执行线程数量很多时,且每个线程执行很短的时间就结束了,这样,我们频繁的创建、销毁线程就大大降低了工作效率(创建和销毁线程需要时间、资源)。java中的线程池可以达到这样的效果:一个线程执行完任务之后,继续去执行下一个任务,不被销毁,这样线程利用率提高了。 java中 阅读全文