支付宝与付费通终止合作后,网上突然出现很多支付宝“窃取用户数据”的言论。商务合作终止固然遗憾,但“盗窃”的罪名更重大,尤其是涉及到大家非常关注的数据问题。...作为小微金服集团(筹)的首席风险官,阿里巴巴、支付宝、小微金服对于数据以及数据的合作和分享是怎么理解的,借这个机会我想跟大家做个简单分享。 1、我们怎么看数据这件事?...基于这样的理解,我们认为数据的商业价值在于运用而不在控制,我们认为数据只有在交换、分享中才能发挥更大的价值,数据会越用价值越高。因此,我们并不担心获取数据的途径,更绝不会用不光彩的手段去获取数据!...如何有效地发挥这些数据的价值,建立一种数据交换以及数据标准的能力,我们的思考才刚刚开始。...4、大数据是无数用户的个体数据积累起来的,但看起来运用和发挥数据价值似乎变成了大机构的专利。这其中如何具体保护客户的隐私和利益?大数据对于每个人的价值又在哪里?
文丨智能相对论 作者 | 佘凯文 如何解决用户数据安全问题,vivo为行业打了一个样 在AI大数据时代,网络媒介正发生着深刻的变化,首要的便是更加开放化,但开放不等于“不设防”,在这样的背景中,个人数据安全如何得到保障...所以说,如何才能形成最有效的“科技防火墙”,还需从用户信息的“出入口”做起,也就是智能手机本身。...面对用户数据安全问题, 手机厂商能做什么?...那么,这种“有温度的力量”,vivo又会如何赋予呢? 1、一份心:数据安全保护应是基本底线 面对数据安全保护问题,对于科技企业而言首要的是一个态度,一个愿意为其改变并付诸实践的态度。...这意味着vivo已货真价实地走在行业“用户数据安全”保障的前列。
比如砸广告,店员的面对面沟通,很缺乏有效的消费者数据挖掘和用户管理系统,更谈不上如何利用数据这个在移动互联网时代的核心资产来做生意。...(未来,我们琢磨的重点就是如何把这人均16万的愿望单品真卖出去啊,呵呵) 2....其中最火的品牌,出乎我们的意料,不管大家如何说个性品牌在崛起,第一名依然是不倒的Louis Vuitton。我们把单品总计收藏次数过万的品牌全部做了一个排名,依次是 3....我们也对用户的地域喜好也做了一些分析,这里选取5个大城市的用户数据(我们以用户的新浪微博注册地为基准)作为样本,看看都有啥发现: □ 首先是,Burberry在迅速崛起,并实现超越老三样LV,...随着我们的用户数量的进一步积累,我们将进一步挖掘这个核心用户群的行为数据,比如不同地域,不同年龄的用户各自最喜爱的单品有什么不同,颜色偏好如何,什么图案或者花纹更受用户喜欢,我们未来可以试试预测哪些单品将会畅销
桶排序,顾名思义,会用到“桶”,核心思想是将要排序的数据分到几个有序的桶里,每个桶里的数据再单独进行排序。桶内排完序之后,再把每个桶里的数据按照顺序依次取出,组成的序列就是有序的了。 看图说话啊。...那既然桶排序这么的优秀,为什么我们在平时的使用中却偏向于其他的排序方法呢(大多数情况下偏向于时间复杂度为O(nlogn)的快排)? 桶排序的小缺点 桶排序对要排序数据的要求是非常苛刻的。...首先,要排序的数据需要很容易就能划分成 m 个桶,并且,桶与桶之间有着天然的大小顺序。 其次,数据在各个桶之间的分布是比较均匀的。...我们可以先扫描一遍文件,看数据所处的数据范围。假设经过扫描之后我们得到,数据最小为1,最大为1000。...基数排序的“脾气” 基数排序对要排序的数据是有要求的,需要可以分割出独立的“位”来比较,而且位之间有递进的关系,如果 a 数据的高位比 b 数据大,那剩下的低位就不用比较了。
大家好,又见面了,我是你们的朋友全栈君。 Linux下如何查看版本信息, 包括位数、版本信息以及CPU内核信息、CPU具体型号等等,整个CPU信息一目了然。 ...1、# uname -a (Linux查看版本当前操作系统内核信息) Linux localhost.localdomain 2.4.20-8 #1 Thu Mar 13 17:54:28 EST...2003 i686 athlon i386 GNU/Linux 2、# cat /proc/version (Linux查看当前操作系统版本信息) Linux version 2.4.20...-8 (bhcompile@porky.devel.redhat.com) (gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)) #1...Red Hat Linux release 9 (Shrike) 4、# cat /proc/cpuinfo (Linux查看cpu相关信息,包括型号、主频、内核信息等) processor
看文献 标题不是错字,就是搞笑的看。大家一听到组会讲文献,四不四还会如鲠在喉。其实文献并没有那么难看~ 学会在文献中找包袱 文献是个啥 Paper, 文献,就是一个带着包袱的很严肃的文学作品。...有啥意义(为啥人家能发cell,你只能发OT) 接下来去瞅瞅Results的题目,这个事文章逻辑主线,写文章一般是从大到小,总分的逻辑。...你要知道谁大谁是总,谁小谁分这个时候你需要脑补一个画面,在什么样的年代,男主A跟女主B怎么认识的,女二C是怎么出现,男二D又是怎么跟女二C搅在一起的,最后A-B结合了怎么影响C-D的结合滤清逻辑之后,自己要画个图...接下来:甩了包袱要接住呀,不要冷场要看看作者是怎样证明的,用了哪些实验,在正文中附属材料中好好读读每一个图,细致的研究图的坐标啥意思,图例中写的啥。...最后要做的 看完之后一定要问自己两个问题 为什么他能发Cell,我只能发OT? 参照这篇文章,自己的课题还有哪里需要完善?
从linux源码看socket的close 笔者一直觉得如果能知道从应用到框架再到操作系统的每一处代码,是一件Exciting的事情。...上篇博客讲了socket的阻塞和非阻塞,这篇就开始谈一谈socket的close(以tcp为例且基于linux-2.6.24内核版本) TCP关闭状态转移图: 众所周知,TCP的close过程是四次挥手...出现大量close_wait的情况 linux中出现大量close_wait的情况一般是应用在检测到对端fin时没有及时close当前连接。有一种可能如下图所示: ?...总结 linux内核源代码博大精深,阅读其代码很费周折。之前读>的时候由于有先辈引导和梳理,所以看书中所使用的BSD源码并不觉得十分费劲。...直到现在自己带着问题独立看linux源码的时候,尽管有之前的基础,仍旧被其中的各种细节所迷惑。希望笔者这篇文章能帮助到阅读linux网络协议栈代码的人。
什么是revision graph revision graph可以看做是一个版本的树图,通常用来做上线之前的版本check,以防有分支代码未合入进来。...其中一定要记得勾选view中的Arrows point towards merges,这样箭头的指向才会是最终merge的方向,至于其他的两个可以根据个人喜好选择。...简要说明 图中的红色部分代表当前分支,橙色部分代表远程分支,黄色部分代表一个tag,绿色部分代表本地分支,灰色的字母串代表一次merge提交
从linux源码看epoll 前言 在linux的高性能网络编程中,绕不开的就是epoll。...epoll_ctl(add) 我们看下epoll_ctl(EPOLL_CTL_ADD)是如何将对应的文件描述符插入到eventpoll中的。...(注:由于是tcp socket,所以这边sock->ops=inet_stream_ops,这个初始化的过程在我的另一篇博客>中,博客地址如下: https...://my.oschina.net/alchemystar/blog/1791017) 既然知道了tfile->f_op->poll的实现,我们就可以看下此poll是如何将安装回调函数的。...总结 epoll作为linux下非常优秀的事件触发机制得到了广泛的运用。其源码还是比较复杂的,本文只是阐述了epoll读写事件的触发机制,探究linux kernel源码的过程非常快乐^_^。
前言 在linux的高性能网络编程中,绕不开的就是epoll。和select、poll等系统调用相比,epoll在需要监视大量文件描述符并且其中只有少数活跃的时候,表现出无可比拟的优势。...epoll_ctl(add) 我们看下epoll_ctl(EPOLL_CTL_ADD)是如何将对应的文件描述符插入到eventpoll中的。...的结构如下图所示: (注:由于是tcp socket,所以这边sock->ops=inet_stream_ops,这个初始化的过程在我的另一篇博客...(soft_irq),再通过linux的软中断机制调用net_rx_action,如下图所示: 注:上图来自PLKA(>) step2: 紧接着跟踪next_rx_action...总结 epoll作为linux下非常优秀的事件触发机制得到了广泛的运用。其源码还是比较复杂的,本文只是阐述了epoll读写事件的触发机制,探究linux kernel源码的过程非常快乐_。
本文大部分讨论的是socket设置为block的情况,即setNonblock(false),仅在最后提及了nonblock socket(本文基于linux 2.6.32-431内核)。...kernel代码版本细微变化 值得注意的是,linux本身官方发布的2.6.32源码对于tcp_syn_retries2的解释和RFC并不一致(至少笔者阅读的代码如此,这个细微的变化困扰了笔者好久,笔者下载了和机器对应的内核版本后才发现代码改了...timeout = ((2 << boundary) - 1) * rto_base; ...... } ========================>linux 内核版本2.6.32.630时,将socket设置为非阻塞,然后用select系统调用去模拟超时,而没有走linux本身的超时逻辑,如下图所示: 由于没有java并没有设置so_sndtimeo的选项,所以在...java的SocketInputStream的sockRead0超时时间 java的超时时间由SO_TIMOUT决定,而linux的socket并没有这个选项。
在有些时候数据会存在缓存中而没有写入磁盘中 数据同步考入磁盘 sync 2.关机重启指令 指令 内容 shutdown/halt/poweroff 关机 reboot 重启 3.运行级别 级别0 关机 级别1 相当于Windows的安全模式
今天笔者就来从Linux源码的角度看下Server端的Socket在进行bind的时候到底做了哪些事情(基于Linux 3.10内核)。...返回,若成功则为0,若出错则为-1 int bind(int sockfd, const struct sockaddr *myaddr, socklen_t addrlen); 好了,我们直接进入Linux...这个特性在紧急重启以及线下调试的非常有用,建议开启。 SO_REUSEPORT SO_REUSEPORT是Linux在3.9版本引入的新功能。...鉴于此,Linux增加了SO_REUSEPORT,而之前bind中判断是否冲突的下面代码也是为这个参数而添加的逻辑: if(!reuseport || !...https://www.nginx.com/blog/socket-sharding-nginx-release-1-9-1/ 总结 Linux内核源码博大精深,一个看起来简单的bind系统调用竟然牵涉这么多
从linux源码看socket(tcp)的timeout 前言 网络编程中超时时间是一个重要但又容易被忽略的问题,对其的设置需要仔细斟酌。...本文大部分讨论的是socket设置为block的情况,即setNonblock(false),仅在最后提及了nonblock socket(本文基于linux 2.6.32-431内核)。...kernel代码版本细微变化 值得注意的是,linux本身官方发布的2.6.32源码对于tcp_syn_retries2的解释和RFC并不一致(至少笔者阅读的代码如此,这个细微的变化困扰了笔者好久,笔者下载了和机器对应的内核版本后才发现代码改了...在timeout>0时,将socket设置为非阻塞,然后用select系统调用去模拟超时,而没有走linux本身的超时逻辑,如下图所示: ?...java的SocketInputStream的sockRead0超时时间 java的超时时间由SO_TIMOUT决定,而linux的socket并没有这个选项。
今天笔者就从Linux源码的角度看下Server端的Socket在进行Accept的时候到底做了哪些事情(基于Linux 3.10内核)。...关于epoll的原理可以看下笔者之前的博客《从linux源码看epoll》: https://www.cnblogs.com/alchemystar/p/13161781.html 在这里描述一下原因,...在accept_queue被填充后,由用户线程通过accept系统调用从队列中获取对应的fd 值得注意的是,当用户线程来不及处理的时候,内核会drop掉三次握手成功的连接,导致一些诡异的现象,具体可以看笔者的另一篇博客...,可以见笔者另一篇博客的详细分析 《从Linux源码看Socket(TCP)的listen及连接队列》: https://www.cnblogs.com/alchemystar/p/13845081.html...总结 Linux内核源码博大精深,每次扎进去探索时候都会废寝忘食,其间可以看到各种优雅的设计,在此分享出来,希望对读者有所帮助。
,主要是看Spring的源码,之后就可以看ContextLoaderListener的contextInitialized(…)方法了,Spring容器就是在这个方法里初始化生成的。...如何初始化,这个太复杂了,需要花非常多的时间去看,去思考的,这里就不讲了,不过我可以说一些我自己总结的小技巧: 说是看源码,其实应该叫看和想。...Spring源码很复杂,我觉得花在思考上的时间至少要和看的时间对等。看了,如果没有花时间想明白,等于白看。 理解重于记忆。...在看一些关键接口或者类时,如果其代码很复杂,先百度下吧,先对其功能有个了解,然后对照着功能看代码会有很大的帮助。 要多遍地看,反复地看。...看注释,理解类,属性和方法的作用,着重第一段注释;看方法的名称,参数和返回值能对方法的作用有很明显的说明。 以上就是我自己看Spring总结的一些小技巧,希望对你们有些助益。
3.top:检测系统资源占用,输出值的第三行是内存占用情况。...查看 Oracle 进程的内存使用情况。 5: pmap 根据进程查看进程相关信息占用的内存情况 (pmap -d pid)。 6.cat /proc/meminfo 命令查看内存信息。...7.vmstat命令对操作系统的虚拟内存、进程、IO读写、CPU活动等进行监视。 8./proc/meminfo 。 9.atop 。 10.GNOME System Monitor 。
/sys/class/regulator下有所有的regular,如 每个节点有如下的属性 cpu0-cpu 使用者名字 device max_microvolts...microvolts min_microvolts 最小电压 name 电源名字 num_users 当前的使用者数量...suspend_standby_state type 电源类型(电压或电流) uevent 查看/d/regulator/regulator_summary有所有电源的信息...,如 use 同上面的num_users(use_count) (_regulator_enable+1 _regulator_disable-1)该参数可表明当前ldo的开光状态 open当前打开次数
1、快速生成一个简单的SpringBoot项目 进入地址:https://start.spring.io/ ,点击生成代码即可。...FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) }) public @interface SpringBootApplication { 看代码...String FACTORIES_RESOURCE_LOCATION = "META-INF/spring.factories"; 也就是说,其实spring.factories是spring-core的功能...因为在项目启动的时候,已经就给我们内置了这么多的服务。 3、容器在哪儿启动的? 3.1 为什么是Tomcat默认启动? 我们再回到开始的时候,为什么启动的时候看到了Tomcat的日志呢?...这里的Servlet.class, Server.class, Loader.class,WebAppContext.class 就是Jetty里面的包。
以 Linux 2.6.38 为分界线,此前Linux 中默认的SCSI target是STGT,之后的标准是 Linux-IO Target。 什么是lio?...Linux-IO Target在Linux内核中(linux 2.6.38后),用软件实现各种SCSI Target,其支持的SAN技术中所有流行的存储协议包括Fibre Channel(Qlogic,...,linux3.3), USB等,同时还能为本机生成模拟的SCSI设备,以及为虚拟机提供基于virtio的SCSI设备。...Linux-IO Target使用户能够使用相对廉价的Linux系统实现SCSI、SAN的各种功能,而不用购买昂贵的专业设备。 OK,下面进入正题,来看看Ceph ISCSI的架构图 ?...开始安装之前必须要满足以下条件: 正在运行的Ceph Luminous版本集群或更高版本的存储群集;(本文我们采用的是M版本) RHEL/CentOS 7.5或者Linux kernel v4.16或更新
领取专属 10元无门槛券
手把手带您无忧上云