![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
ATM006
风之积也不厚 其负大翼也无力
展开
-
为什么阿里云要做流批一体?
流批一体已经从理论走向实践,并在2020年迎来落地元年。短短 5 年,Apache Flink(下称 Flink)从一个突然出现在大数据舞台的“萌新”系统,迅速成长为人人皆知的流计算引擎。在伴随 Flink 发展掀起的这波实时计算浪潮里,阿里是国内走得最前、做得也最多的一个,“流批一体”是它的新赛道。今年双 11, Flink 流批一体开始在阿里最核心的数据业务场景崭露头角,并抗住了 40 亿条/秒的实时计算峰值。这是第一次有互联网超级大厂真正在核心数据业务上规模化落地流批一体技术。同时,这也意转载 2020-12-13 21:19:53 · 938 阅读 · 0 评论 -
sakai记录
http://sakai.sikai.net.cn/thread-215-1-1.html原创 2018-04-13 22:45:17 · 188 阅读 · 0 评论 -
paho-mqtt 入门
安装:pip install paho-mqtt 或 pip3 install paho-mqtt例子:import paho.mqtt.client as mqtt# The callback for when the client receives a CONNACK response from the server.def on_connect(client, userdata, rc...原创 2018-04-10 20:41:47 · 8353 阅读 · 0 评论 -
智能家居系统
概念: 智能家居系统是利用先进的计算机技术、网络通讯技术、智能云端控制、综合布线技术、医疗电子技术依照人体工程学原理,融合个性需求,将与家居生活有关的各个子系统如安防、灯光控制、窗帘控制、煤气阀控制、信息家电、场景联动、地板采暖、健康保健、卫生防疫、安防保安等有机地结合在一起,通过网络化综合智能控制和管理的系统。组成: 智能家居系统包含的主要子系统有:家居布线系统、家庭...原创 2018-04-14 19:12:12 · 1782 阅读 · 0 评论 -
falsk记录
flask mega-tutorial 1.1 documentation原创 2018-04-14 16:11:17 · 263 阅读 · 0 评论 -
Json模块dumps、loads、dump、load
1、json.dumps() json.dumps()用于将dict类型的数据转成str 2、json.loads() json.loads()用于将str类型的数据转成dict3、json.dump() json.dump()用于将dict类型的数据转成str,并写入到json文件中4、json.load() json.load...原创 2018-04-09 16:09:58 · 300 阅读 · 0 评论 -
套接字API
套接字创建socket#include <sys/types.h>#include <sys/socket.h>int socket( int domain, /* 创建的套接字的协议族, AF_XXX */ int type, /* 创建的套接字的类型, SOCK_XXX */ int protoco...原创 2018-04-07 14:13:21 · 455 阅读 · 0 评论 -
Ubuntu安装 pyautogui 模块
sudo pip3 install python3-xlibsudo apt-get install scrotsudo apt-get install python3-tksudo apt-get install python3-devsudo pip install pyautogui #【不加sudo会出错】检验 在交互环境运行: import pyautogui 应用...原创 2018-03-08 13:21:19 · 2384 阅读 · 0 评论 -
后台开发面试常被问到的问题(一):什么之间的区别
后台开发面试常被问到的问题:什么之间的区别笔者在将近半年的求职经历总结new和malloc区别1、申请内存位置2、返回值类型3、分配内存失败时返回值4、是否需要指定内存大小5、是否调用构造、析构函数6、对数组处理7、new和malloc相互调用8、重载9、重新分配内存10、客户处理内存不足 C/C++区别一、带有默认值的函数 C++函数的原型中可以声明一个或多个带有默认值的参数。二、Inlin...原创 2017-11-12 16:44:08 · 1876 阅读 · 0 评论 -
程序员有趣的面试智力题
转载请标明出处,原文地址:http://blog.csdn.net/hackbuteer1/article/details/6726419 偶然间在网上看到几个原来没见过的面试智力题,有几个题目在国内流传相当广,什么n个人怎么分饼最公平,屋里的三个灯泡分别由哪个开关控制,三架飞机环游世界,用火柴和两根绳子测量45分钟之类的题目,火星得已经可以考古了,这里就不再说了。 ...转载 2018-04-16 19:01:46 · 398 阅读 · 0 评论 -
jdk1.8环境变量配置
jdk安装路径: C:\Program Files (x86)\Java\jdk1.8.0_144JAVA_HOME: C:\Program Files (x86)\Java\jdk1.8.0_144CLASSPATH: .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jarPATH: ;%JAVA_HOME%\bin;...原创 2018-03-28 19:59:57 · 367 阅读 · 0 评论 -
CrazyTalk 8安装注册教程
CrazyTalk是一款非常个性的图片处理工具,它可以让你的照片动起来,软件内置了丰富的特效和音特,并且支持自定义导入个性化的音频效果使用,有了它就可以让你的照片变得更加神奇了,为了方便大家使用,小编这里为大家讲一下CrazyTalk 8的安装方法: 下载地址:https://pan.baidu.com/s/1c0VYzhmhttp://www.121down.com/artic...转载 2018-12-08 20:55:27 · 5622 阅读 · 0 评论 -
Mac操作系统-软件安装
macbook安装wget的2种方式mac下配置 iterm2支持rz sz命令https://github.com/mmastrac/iterm2-zmodem原创 2020-01-05 13:04:43 · 332 阅读 · 0 评论 -
PID反馈控制-笔记
当今的闭环自动控制技术都是基于反馈的概念以减少不确定性。反馈理论的要素包括三个部分:测量、比较和执行。测量关键的是被控变量的实际值,与期望值相比较,用这个偏差来纠正系统的响应,执行调节控制。在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。PID控制器(比例-积分-微分控制器)是一个在工业控制应用中常见的反馈回路部件,由比例单元P、积分单元I和微分单...原创 2018-05-14 17:52:12 · 6282 阅读 · 0 评论 -
C++为什么不可以同时用const和static修饰成员函数
C++编译器在实现const的成员函数的时候为了确保该函数不能修改类的实例的状态,会在函数中添加一个隐式的参数const this*。但当一个成员为static的时候,该函数是没有this指针的。也就是说此时const的用法和static是冲突的。...原创 2018-04-28 12:11:07 · 2424 阅读 · 0 评论 -
gcc与g++比较
1.后缀为.c的,gcc把它当作是C程序,而g++当作是c++程序;后缀为.cpp的,两者都会认为是c++程序2.编译阶段,g++会调用gcc,对于c++代码,两者是等价的,但是因为gcc命令不能自动和C++程序使用的库联接,所以通常用g++来完成链接,为了统一起见,干脆编译/链接统统用g++了,这就给人一种错觉,好像cpp程序只能用g++似的。 误区一:gcc只能编译c代码,g++只能编译c+...原创 2018-04-28 12:09:04 · 126 阅读 · 0 评论 -
iot api json数据包格式
[REST api]0417 api 设计站点====================================创建一个新站点POST /iot/api/sites/http://localhost:8080/iot/api/sites [body]{ "token" : "", //如果请求中不带token,系统生成唯一token "name" : "REST Site...原创 2018-04-17 13:12:53 · 1407 阅读 · 0 评论 -
iot curl 详解
REST API 测试[led]====================================================curl -X GET http://127.0.0.1:5000/iot/api/ledcurl -X POST http://127.0.0.1:5000/iot/api/led -d '{"led":"true"}'[site]===============...原创 2018-04-20 20:45:33 · 679 阅读 · 0 评论 -
C语言函数堆栈调用过程
ebp栈底指针(寄存器)esp栈顶指针(寄存器)栈底指针(ebp)-偏移表示地址1、函数调用先压实参(从右向左支持可变参),通过(栈底指针-偏移)把实参移到寄存器(eax、ecx)再压入栈2、(call指令)先把当前栈帧下一行指令地址入栈,再跳转。 入栈过程:1、把调用方栈底指针(ebp)压入当前栈顶,再把调用方栈底指针(ebp)向当前栈顶指针(esp);2、栈顶指针上移(esp-X)开辟空间...原创 2017-11-01 11:04:52 · 1019 阅读 · 0 评论 -
虚析构函数
虚析构函数的作用是避免内存泄漏,而且是当子类中有指针成员变量时会用到。虚析构函数在释放指向子类对象的基类指针是可以调用子类的析构函数达到释放子类对象堆中内存的目的。由于基类的析构函数为虚函数,所以子类会形成虚表,其中存有基类虚函数,当释放基类指针时,由于子类析构函数与子类析构函数构成多态,所以先调用子类析构函数在调用基类构造函数。原创 2017-10-08 18:49:34 · 182 阅读 · 0 评论 -
链接、装载与库
链接、装载与库 在Linux下,当我们使用gcc来编译HelloWord程序时,只需要$gcc hello.c$./a.outHello world 其中实际包括4步骤:预处理(Prepressinng),编译(Compliation),汇编(Assembly),链接(Linking)1.预编译$ gcc -E hello.c -o hello.i或 $ c转载 2017-08-15 17:26:06 · 523 阅读 · 0 评论 -
Windows已在“xxx.exe”中触发了一个断点。
templateType ** Get2Array(int n, int m){ Type **s = (Type**)malloc(sizeof(Type)*n); if (NULL == s) exit(1); for (int i = 0; i<n; ++i) { s[i] = (Type*)malloc(sizeof(Type)*m); memset(s[i], 0,原创 2017-02-16 20:56:57 · 11514 阅读 · 1 评论 -
Reactor AND Proactor
Reactor模式“The reactor design pattern is an event handling pattern for handling service requests delivered concurrently by one or more inputs. The service handler then demultiplexes the incomin原创 2016-12-07 21:55:05 · 285 阅读 · 0 评论 -
模板(二)
1007模板模板参数列表 templatetypename 1.定义模板类型参数 2.指明后面紧跟的名字是一个类型非类型参数 常量 char short int long ...float 自定义类型指针引用函数模板实例化(调用点->引用实例化compare compare(...)) (显示实例化 template bool compare(int,int)) 模板函原创 2016-10-08 11:01:42 · 306 阅读 · 0 评论 -
模板(一)
//给定模板类型的实参//在调用点,模板根据给定类型,实例化一份处理该类型的模板函数//推演//函数模板 ---> //实例化(显式、隐式) ---->//模板函数templatebool compare(T a, T b){ return a>b;}compare('a','c');compare('a','c'); 模板实参的推演模板实现一般在头文件原创 2016-10-08 11:00:15 · 328 阅读 · 0 评论 -
explicit作用
explicit作用:在C++中,explicit关键字用来修饰类的构造函数,被修饰的构造函数的类,不能发生相应的隐式类型转换,只能以显示的方式进行类型转换。explicit使用注意事项: * explicit 关键字只能用于类内部的构造函数声明上。 * explicit 关键字作用于单个参数的构造函数。 * 在C++中,expli转载 2016-10-29 16:03:40 · 233 阅读 · 0 评论 -
listen、connect、accept流程及原理
listen、connect、accept流程及原理以AF_INET,SOCK_STREAM,IPPROTO_TCP三个参数实例化的socket为例,通过一个副图来讲解这三个函数的工作流程及粗浅原理(图片改自http://blog.csdn.net/russell_tao/article/details/9111769) 图6 listen、ac...原创 2016-10-16 19:25:02 · 3240 阅读 · 0 评论 -
类 对象生存周期
类 对象生存周期/*************************20160915C++*************************/#includeusing namespace std;/*对象生存周期c <=4 eax >4 <=8 eax edx返回对象,总产生临时量C++ 空 1*临时对象不在赋值构造同类型新对象时产生*/clas原创 2016-09-16 16:58:03 · 300 阅读 · 0 评论 -
函数指针
--- d:\vs2015\acode\genlist\genlist\main.cpp -----------------------------------int main(){008D1800 push ebp 008D1801 mov ebp,esp 008D1803 sub esp,0C0h 008D1809 pu原创 2016-09-11 13:31:20 · 196 阅读 · 0 评论 -
整理0312.c
//严重性 代码 说明 项目 文件 行//错误 C4996 'scanf': This function or variable may be unsafe.Consider using scanf_s instead.To disable /////deprecation, use #define _CRT_SECURE_NO_WARNINGS//.See online help for原创 2016-03-23 14:01:10 · 528 阅读 · 0 评论 -
init进程如何从内核态切换到用户态
init进程如何从内核态切换到用户态. 大家都知道如何产生一个新的进程。 通过sys_fork,之后再调用sys_execve 系统初启后(核心态)的第一个用户态进程是init。 这要涉及到内层(特权级高)向外层(特权级低)转移的问题。通常情况下,内核是不会调用用户层的代码,要想实现这逆向的转移,一般做法是在用户进程的核心栈(tss->esp0)压入用原创 2017-02-25 00:16:28 · 923 阅读 · 0 评论 -
Linux操作系统的启动
Linux操作系统的启动2012-09-07 16:23:10 分类: LINUXPower on-->系统自检-->将主引导程序 MBR 装入内存并把控制权交给它MBR(master boot recond 主引导扇区:可以看作硬盘的第一个扇区)-->在 MBR 控制下,系统继续引导核心装入内存-->系统进一步初始化过程:(1)首先初始化系统内转载 2017-03-29 23:40:17 · 202 阅读 · 0 评论 -
Memcached学习总结
MemcachedMemcached是一个自由开源的,高性能,分布式内存对象缓存系统。Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象)。这些数据可以是数据库调用、API调用或者是页面渲染的结果一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。原创 2017-08-21 23:42:59 · 244 阅读 · 0 评论 -
计算任意多边形的面积
以三角形为例设A(x1,y1),B(x2,y2),C(x3,y3) 由A-->B-->C-->A 按逆时针方向转。 设三角形的面积为S 则S=(1/2)*(下面行列式) |x1 y1 1| |x2 y2 1| |x3 y3 1| S=(1/2)*(x1y2*1+x2y3*1+x3y1*1-x1y3*1-x2y1*1-x3y2*1) 即用三角形的三个顶点坐标求其面积的公式为: S=(1/2)转载 2017-08-20 21:44:01 · 1484 阅读 · 0 评论 -
HEAP CORRUPTION DETECTED 错误解决方案
HEAP CORRUPTION DETECTED:after Normal block(#***) at 0x****.CRT detected that application wrote memory after end of heap buffer.错误原因:以对内在操作的过程中,所写的地址超出了,所分配内在的边界这是典型的内存溢出错误,常在内存的dele转载 2017-02-17 18:11:25 · 4779 阅读 · 0 评论 -
如何解决error: failed to push some refs
Username for 'https://github.com': ATM006Password for 'https://ATM006@github.com':To https://github.com/ATM006/NobCno.git ! [rejected] master -> master (fetch first)error: failed to ...原创 2017-08-02 22:55:24 · 11553 阅读 · 2 评论 -
4种类型转换操作符 (static_cast const_cast dynamic_cast reinterpret_cast)
1.static_cast 2.const_cast 3.dynamic_cast 4.reinterpret_cast.原创 2017-03-26 21:39:41 · 373 阅读 · 0 评论 -
Linux github提交方法
Linux github提交方法git clone https://github.com/ATM006/loadbalance.git git status git add . git status git commit -m “first” git status git push git statusorchid@ATM:~/myprogram$ git clone http原创 2017-07-21 12:41:55 · 343 阅读 · 0 评论 -
如何解决MongoDB启动时无法连接到Upstart的错误
注意:sitewhere安装遇到此问题直接看文末即可。在Ubuntu 16.04 TLS系统上安装MongoDB,安装完成后使用service mongod start命令启动mongoDB失败,提示无法连接到Upstar的异常。 MongoDB启动异常重现在使用如下命令启动MongoDB服务:$ sudo service mongod start系统提示如下错误信息:Job for mongod...转载 2017-06-12 21:08:12 · 2573 阅读 · 0 评论 -
字节序 大端vs小端
大端最大字节地址出现在最低有效字节(LSB) n n+1 n+2 n+3MSB-----------------MSB小端最低有效地址出现在最低有效字节(MSB)n+3 n+2 n+1 nMSB-----------------MSB!最低有效字节-->最大有效字节#incl原创 2016-10-02 18:36:44 · 469 阅读 · 1 评论