【设计理念】分布式系统的麻烦

分布式系统的麻烦 在分布式系统中,我们不再处于理想化的系统模型中,我们别无选择,只能面对现实世界的混乱现实。在分布式系统中,尽管系统的其他部分工作正常,但系统的某些部分可能会以某种不可预知的方式被破坏。这被称为部分失效。 关于如何构建大型计算系统有一系列的哲学: 规模的一端是高性能计算(HPC)领域。具有数千个CPU的超级计算机通常用于计算密集型科学计算任务,如天气预报或分子动力学。 另一个极端是云计算(cloud computing),云计算并不是一个良好定义的概念,但通常与多租户数据中心,
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

Notification API,为你的网页添加桌面通知推送

Notification 是什么 MDN: Notifications API 的 Notification 接口用于配置和向用户显示桌面通知。这些通知的外观和特定功能因平台而异,但通常它们提供了一种向用户异步提供信息的方式。 其实,MDN 的说明已经可以让我们很清楚知道 Notification 的作用。Notification 能够为用户提供异步的桌面消息通知,即使你缩小浏览器或是活动在其他标签页,只要调用该 Api 的标签页没被关闭,它都能工作。在桌面端的浏览器中,除了 IE 不支持外,
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

数据中台全景架构及模块解析!一文入门中台架构师!

回顾一下,第一篇文章大白话 六问数据中台!你想知道的都在这了!。把数据中台是什么?为什么?有什么价值?说的明明白白。数据中台是企业级能力复用平台,目标是让数据持续用起来,通过数据中台提供的工具、方法和运行机制,把数据变为一种服务能力,让数据更方便地被业务所使用。 今天就来点实际干货,把企业真实数据平台架构分享给您!相信看完这篇文章,你会真正对数据中台有一个全景的认识与理解,从抽象过度到具体。无图无真相,我赶紧po一张数据中台总体架构图: 数据中台是在底层存储计算平台与上层的数据应用之间的一整套
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

(三)函数提高

函数默认参数 在C++中,函数的形参列表中的形参是可以有默认值的。 需要注意的是默认值是从右到左有的。 语法: 返回值类型 函数名 (参数= 默认值){} int func(int a, int b = 10, int c = 10) { return a + b + c; } //1. 如果某个位置参数有默认值,那么从这个位置往后,从左向右,必须都要有默认值 //2. 如果函数声明有默认值,函数实现的时候就不能有默认参数 int func2(int a = 10, int b = 10)
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

PART(Persistent Adaptive Radix Tree)的Java实现源码剖析

论文地址 Adaptive Radix Tree: https://db.in.tum.de/~leis/papers/ART.pdf Persistent Adaptive Radix Tree: https://ankurdave.com/dl/part-tr.pdf 代码地址: https://github.com/ankurdave/part 数据结构 如图所示 为整颗树的大致结构 分为根节点root 普通节点node和叶节点leaf。整个查找过程从根节点开始找到叶节点,例如第一个叶节
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

微信小程序开发三宗罪和解决方案

注意 本文章对应版本已经过时,请查阅最新版文档 https://github.com/maichong/l... QQ交流群 282140496 在微信公布小程序的文档和开发工具后,脉冲软件在第一时间进行了学习和体验,我们发现微信小程序的技术架构和开发体验让我们非常失望。 由于微信小程序的运行环境并不是一个标准的浏览器环境,而且微信的封装工作并不完善,所以我们以往开发中的很多经验并不适用。 这并非简单的开发习惯不适应,更重要的是我们的开发流程、规范将不适用。 微信小程序开发第一宗罪: 无法调用
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

Looper 源码分析

//可以看到我们的Looper是存放在线程独有的ThreadLocal进行隔离的 //也就是每个线程独有一份Looper static final ThreadLocal<Looper> sThreadLocal = new ThreadLocal<Looper>(); //系统帮我们实现的主线程的Looper对象 private static Looper sMainLooper; //每一个Looper都有自己的MessageQueue消息队列 final MessageQueue mQu
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

学会放下,学会放手

11111111111111111111
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

让你的「微信小程序」运行在Chrome浏览器上,让我们使用WebStorm

「微信小程序」的开发框架体验起来,还不错——自带了UI框架。但是问题是他的IDE,表现起来相当的糟糕——其实主要是因为,我当时买WebStorm License买了好多年。所以,我觉得他的IDE真不如我这个付费好用。 而且,作为一个拥护自由和开源的 「GitHub 中国区首席Markdown程序员」。微信在「微信小程序」引导着Web开向封闭,我们再也不能愉快地分享我们的代码了。 如果我们放任下去,未来的Web世界令人堪忧。 好了,废话说完了: 文章太长不想看,可以直接看Demo哈哈: GitH
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

Linux下的程序、進程和線程

目录 Linux下的程序、進程和線程 概念 進程產生的方式 進程間通信與同步 Linux下的線程 References 概念 Linux環境下的進程 進程的產生 複製父進程的環境配置 在內核中建立進程結構 將結構插入進程列表 分配資源 複製父進程的內存映射信息 管理文件描述符和鏈接點 通知父進程 進程的終止 main函數返回 調用exit 調用_exit 調用abort 由一個信號終止 進程終止將釋放其擁有的資源 線程和進程的主要區別是進程是操作系統資源分配的基本單位,擁有完整的虛擬空間。 線
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

“课堂小白”班门弄斧——JAVA一维数组

一维数组: (1)定义:一组类型相同的连续的存储空间的表示。其中可以包含的元素有N个,而N的数量则取决于电脑内存的大小。 (2)优势:寻址快,遍历快 在一个数组中数组的数组名称代表着数组中第一个元素的地址,一旦找到相对应的地址,就会依次连续的遍历数组中的的数值,所以寻址快,遍历快。 (3)缺陷:插入慢,删除 所谓“成也萧何,败也萧何”,在遍历数组时是依次进行遍历,所以插入或者删除一个数时速度较慢。 (4)数组使用的四个步骤 1) 申明:数据类型 [] 数组名称; 例如:int[] array;
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

一行命令多线程自动化运维linux的尝试

一行命令多线程自动化运维 host1 指的是主机名,运行完之后 在运行命令的当前目录查看日志 for system in host1 host2 host3 host4; do nohup ssh -n ${system} "su - -c 'cat /etc/sysctl.conf|grep -v ^#|grep -v ^$ 2>&1 >/tmp/${system}_sysctl_detail.log;scp -p /tmp/${system}_sysctl_detail.log .'" 2
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

Spring 核心组件原理解析

尽管希腊哲学家赫拉克利特(Heraclitus)并不作为一名软件开发人员而闻名,但他似乎深谙此道。他的一句话经常被引用:“唯一不变的就是变化”,这句话抓住了软件开发的真谛。 我们现在开发应用的方式和1年前、5年前、10年前都是不同的,更别提15年前了,当时RodJohnson的图书 Expert One-on-One J2EE Design and Development 介绍了Spring框架的初始形态。当时,最常见的应用形式是基于浏览器的Web应用,后端由关系型数据库作为支撑。尽管这种形式
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

2020-05-18 — 习题训练一

A - Phoenix and Balance 找规律的题,a[i]=a[i-1]*2+2; 代码: #include<cstdio> #include<cstring> #include<cstdlib> #include<math.h> #include<map> #include<iostream> #include<algorithm> using namespace std; int main(){ int n,m; cin>>n; for(int i=0;i<n;i++){
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

IDRAC安装dell服务器操作系统(linux or windows),用到生命周期管理器

1、首先给服务器装上idrac模块,然后给idrac配置一个远程IP,用作管理 2、在web界面输入IP,弹出以下界面,输入账号密码登录 3、认证成功后,点击虚拟控制台启动 4、进入如下界面,点击菜单栏的《虚拟介质》,弹出虚拟介质界面,在映射CD/DVD 下点击选择文件,把你需要安装的操作系统镜像选定,之后点击右边的映射设备,这样就相当于装上了光驱,给光驱放入了操作系统盘。 映射成功结果图,因为我是安装centos系统举例,这里你选择了什么操作系统就是什么操作系统 接下来重启,就和普通的服务器
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

s3c2440裸机-内存控制器(三-4、norflash编程之实现)

1.识别 我们知道要识别norflash属性,要让norflash进入cfi模式,然后按照手册上的表格发送一系列的命令就能获取norflash属性。 1)发送命令函数 那么我们需要实现一个cpu向nor发命令的一个函数nor_cmd()。我们的norflash是16bit位宽的,所以访问nor是以16位为单位访问的。 #define NOR_FLASH_BASE 0 /* jz2440, nor-->cs0, base addr = 0 */ /* 比如: 55H 98 ** 本意是
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

HTML7

操作标签 # 操作类 """ js版本 jQuery版本 classList.add() addClass() classList.remove() removeClass() classList.contains() hasClass() classList.toggle() toggleClass() """ # css操作 <p>111</p> <p>222</p> """一行代码将第一个p标签变成红色第二个p标签变成绿色""" $('p').first().css('color','r
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

配置中心Nacas版本升级

目录 简介 升级目标 服务器配置信息 两个版本之间主配置文件异同 Nacos v1.2.1主配置文件:application.properties Nacos v.1.3.0-beta主配置文件新增加内容 版本升级后默认修改的参数 升级策略 注意事项 升级 1. 准备安装包 2.提前配置好新版本的配置文件 3. 停止服务 4. 备份目前 v1.2.1 的配置 5. 更换配置 6. 启动服务 简介 此文介绍配置管理中心 Nacos 的升级问题。 升级目标 Nacos版本:v1.2.1 -> v.
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

5月20日总结

日期 股票代码 名称 今天开 今收 五日线最低 最高 最低 历史最高 成本 亏 仓位 明日操作 20 000564 供销大集 4.32 3.95 3.10 4.55 3.8 16.97 4.205 6.064% 1500股 跌了进行小额度1000补仓 涨了减掉仓位位700股 20 600812 华北制药 8.81 8.98 8.73 9.60 8.73 17.28 9.109 1.416 1100股 跌到8.6加仓400股 涨了观望,此股看好后续拉伸不操作
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0

00007-layui 按下Escape 退出 弹出层layer

layui 按下Escape 退出 弹出层layer 在common.js ,即顶层 页面中 监听事件: window.onkeyup=function(ev){ var key=ev.keyCode||ev.which; if(key==27){ //按下Escape layer.closeAll(); //疯狂模式,关闭所有层 if(parent){ parent.layer.c
分类: 其他 发布时间: 05-20 22:46 阅读次数: 0