技术文章

ES6的Array.from()与Array.of()用法

只谈情不闲聊 提交于 2021-02-18 17:52:09
参考文献: 《ES6 标准入门》 ES6中最让人享福的地方之一就是它的新增数组应用的方法,同时,数组是JavaScript中最常见的数据集合,而ES6中新增的数组应用的方法能够提高我们的工作效率和简化我们的代码.所以今天小D就为大家一起来学习ES6中的 Array.from() 与 Array.of() . Array.from() Array.from()方法用于将 两类对象转为真正的数组 : 类似数组的对象(array-like object) 可遍历(iterable)的对象(包括 ES6 新增的数据结构 Set 和 Map) 这里我们解释一下什么叫做类似数组对象,如下代码所示: let student = { 0 : 'ElegantCode' , 1 : '18' , 2 : 'boy' , length : 3 } 我们可以在上面的对象student中发现,类似数组对象有两个特点: 1. 它必须是一个对象 2. 它有 length 属性 一个对象的所有键名都是正整数或零,并且有length属性,那么这个对象就很像数组,语法上称为“类似数组的对象”(array-like object)。 “类似数组的对象”的根本特征,就是具有length属性。只要有length属性,就可以认为这个对象类似于数组。 但是有一个问题,这种 length属性不是动态值,不会随着成员的变化而变化

docker 中挂载 cephfs

此生再无相见时 提交于 2021-02-18 17:51:54
在docker容器中,安装ceph。 docker run --privileged=true 方式运行容器 使用ceph-fuse在用户态挂载cephfs到ceph集群的Monitor即可。 docker run --privileged=true -it -v /home/ceph/cephfs ubuntu:ceph /usr/bin/ceph-fuse -k /home/ceph/ceph.client.admin.keyring -m 10.32.170.104:6789 /home/ceph/cephfs,即,将ceph客户端容器作为数据卷容器来使用。 来源: oschina 链接: https://my.oschina.net/u/1271640/blog/394041

docker stack 部署 mssql

拟墨画扇 提交于 2021-02-18 17:51:43
=============================================== 2019/12/8_第1次修改 ccb_warlock =============================================== 因为最近的工作项目使用的是mssql(自从知道mssql之后,我几乎不再说起另一个累赘的名字:sql server),不得不去重新学习使用mssql。 我的理解是,使用mssql仅仅只是使用数据表时,用docker运行一个开发用的容器比起在一台win server中安装一个来的高效且省资源。 当然如果还需要写存储过程及其调试,那还是用ssms来开发和调试吧(过程比起oracle、mysql虐心太多)。 因为我自学过docker、又喜欢折腾这种可以省时间的技术,所以整理了这篇笔记给路人参考。 一、前提条件 环境中已经部署了docker swarm( http://www.cnblogs.com/straycats/p/8978135.html ) 最好也部署了portainer( http://www.cnblogs.com/straycats/p/8978201.html ) 默认swarm创建了network:swarm-net 二、部署MSSQL 由于项目需要,我部署的是mssql 2017。 2.1 创建目录映射 mkdir -p

使用docker部署SqlServer

荒凉一梦 提交于 2021-02-18 17:51:31
踩了很多坑,来记录一下 首先说sqlserver 1. 安装docker要使用centos 7以上版本,使用centos 6及以下版本会出现各种问题 2. docker CE安装过程 $ sudo yum install -y yum-utils device-mapper-persistent-data lvm2 $ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo #建立仓库 $ sudo yum install docker-ce #安装docker $ sudo systemctl start docker #开启docker 3. 从 Docker Hub 中拉出 SQL Server 2017 Linux 容器映像 $ sudo docker pull microsoft/mssql-server-linux:2017-latest 4. 显示所有可用的镜像 $ docker images 5. 运行一个镜像(也就相当于使用已有的镜像创建一个实例) $ sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' -p 1401:1433 -v

使用Docker部署MSSQL

泪湿孤枕 提交于 2021-02-18 17:51:18
部署MSSQL需要2G内存 1.下载镜像 docker pull microsoft/mssql-server-linux 使用该命令就可以把数据库的docker镜像下载下来。 2.创建并运行容器 docker run --name MSSQL_1433 -m 512m -e ' ACCEPT_EULA=Y ' -e ' SA_PASSWORD=yourStrong(!)Password ' -p 1433 : 1433 -d microsoft/mssql-server-linux 这个密码需要复杂密码,要有大小写和特殊符号,替换yourStrong(!)Password成你自己的密码就行。如果只Linux服务器,可以不用端口映射,直接使用宿主模式 docker run --name MSSQL_1433 -m 512m -e ' ACCEPT_EULA=Y ' -e ' SA_PASSWORD=yourStrong(!)Password ' --net=host -d microsoft/mssql-server-linux 3.登入容器 docker exec -it MSSQL_1433 /bin/bash 4.连接到sqlcmd /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P ' yourStrong(!

docker 安装 sqlserver 数据库

自闭症网瘾萝莉.ら 提交于 2021-02-18 17:51:07
具备条件: 1.服务器需要大于2G内存。如果不够则可能无法正常启动,查看日志报如下错误: This program requires a machine with at least 2000 megabytes of memory 2、获取 sqlserver 镜像 $ docker pull mcr.microsoft.com/mssql/server:2017-latest 镜像下载成功后,运行镜像 $ docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=sa1122.?' -p 33061:1433 -v /opt/data/sqlserver/:/var/opt/mssql/data/ --name sqlserver -d mcr.microsoft.com/mssql/server:2017-latest 查看日志 2019 - 03 - 27 09 : 25 : 02.28 spid7s Converting database ' msdb ' from version 862 to the current version 869 . 2019 - 03 - 27 09 : 25 : 02.29 spid7s Database ' msdb ' running the upgrade step from version 862

我是培训机构出身的程序员,不敢告诉任何人

|▌冷眼眸甩不掉的悲伤 提交于 2021-02-18 17:50:37
点击上方 SQL数据库开发 ,关注获取 SQL视频教程 SQL专栏 SQL数据库基础知识汇总 SQL数据库高级知识汇总 来源 | InfoQ 作者丨褚杏娟 培训机构出身程序员和科班程序员之间,有鄙视链吗? 1 “谁都看不上培训机构的” “我是培训 + 外包出来的,确实有被甲方嫌弃过。”2016 年从电子信息专业毕业的小右说起这个话题有些落寞。 公务员考试失利的小右在大四上学期开始找工作,但因为学习成绩一般,工作找得并不顺利。这个情况持续一段时间后,小右决定去参加某培训机构的 Java 培训。“电子信息专业虽说属于计算机范畴,但其实和编程还不一样的,我也是没办法。”小右很无奈。 培训机构的课程对有一定 C、C++ 基础的小右来说还算比较轻松。他所在的那家培训机构的上课内容就是老师带着做做项目,教的代码在后面工作中可以复用。几个月后小右从培训机构毕业,第一份工作是北京当地蛮著名的一个外包机构,薪资 5K。 与同批毕业找到不错工作的同学们比,小右还是感到些许心酸。“上课的学费,我是走的贷款。和培训机构签过协议,毕业就可以找到工作。找不到,损失由培训机构承担;找得到,机构每个月要从我的薪资里面抽一部分还学费。“北京的生活成本本来就高,加上机构的抽成,对于刚毕业的小右来说,无疑压力很大。 在这家外包公司呆了一年后,小右跳槽了——仍旧是家外包公司。

Linux 系统挂载数据盘

血红的双手。 提交于 2021-02-18 17:50:25
适用系统:Linux(Redhat , CentOS,Debian,Ubuntu) * Linux的云服务器数据盘未做分区和格式化,可以根据以下步骤进行分区以及格式化操作。 下面的操作将会把数据盘划分为一个分区来使用。 1、查看数据盘 在没有分区和格式化数据盘之前,使用 “df –h”命令,是无法看到数据盘的,可以使用“fdisk -l”命令查看。如下图: 友情提示: 若您执行fdisk -l命令,发现没有 /dev/xvdb 标明您的云服务无数据盘,那么您无需进行挂载,此时该教程对您不适用 2、 对数据盘进行分区 执行“fdisk -S 56 /dev/xvdb”命令,对数据盘进行分区; 根据提示,依次输入“n”,“p”“1”,两次回车,“wq”,分区就开始了,很快就会完成。 3、 查看新的分区 使用“fdisk -l”命令可以看到,新的分区xvdb1已经建立完成了。 4、格式化新分区 使用“mkfs.ext3 /dev/xvdb1”命令对新分区进行格式化,格式化的时间根据硬盘大小有所不同。 (也可自主决定选用其它文件格式,如ext4等) 5、添加分区信息 使用“echo '/dev/xvdb1 /mnt ext3 defaults 0 0' >> /etc/fstab”( 不含引号 )命令写入新分区信息。 然后使用“cat /etc/fstab”命令查看

恶意评论识别率提升14%!俄罗斯Sputnik App集成华为系统完整性检测

让人想犯罪 __ 提交于 2021-02-18 17:50:07
俄罗斯(Sputnik)是享有国际声誉的卫星通讯社,旗下新闻应用程序提供高质量的国际新闻,包括突发新闻、全球重大事件、深度报道、在线广告视频和独家采访。App集成了系统完整性检测功能后,应用市场内恶意评论识别率提升了14%。 业务挑战 Sputnik手机业务负责人Dmitry Priemov表示,“我们发现App运行的部分设备恶意攻击App,企图破解广告,”因此,他意识到,“我们需要知道哪些设备系统已被恶意篡改,因为那可能导致我们的App广告被破解。”此外,“对于商店中的差评,我们也需要快速评估是否是来自系统被篡改、利用的设备。” 解决方案 “我们将系统完整性检测作为评估设备风险性的重要一环,”Dmitry Priemov说。安全检测服务是华为推出的多维度安全检测开放服务,提供系统完整性检测等功能,帮助应用快速构建安全能力,保护用户隐私及App运行安全。其中,系统完整性检测是基于TEE可信执行环境和数字证书签名,帮助App检测其运行设备系统是否被恶意篡改。在App中加入系统完整性检测功能后,“我们可以清楚知道App运行设备是否已被root。” 如果发现设备存在安全风险,“我们可以选择限制部分恶意攻击的风险设备使用App的一些功能,从而保护我们的广告不被恶意破解。”另外,针对恶意差评问题,Sputnik后台团队就可以“跳过这类被检测出风险的设备的恶意差评,或回复他们如需正常使用

分库分表的方案

戏子无情 提交于 2021-02-18 17:49:56
大数据量系统开发中,由于数据量很大,经常遇到数据存储在集群上的需求,这时候就需要在不同的方案中进行权衡选择了。 一种选择是利用现成的中间件,比如ES,HBASE,mongdb等,这些中间件自带集群扩展功能,业务代码无需关注水平扩展。 还有一种是关系数据库+分库分表路由的方式,典型的是shardingJDBC+多台mysql,通过shardingJDBC来进行路由到哪台mysql的方式完成。 第二种方式用起来比较费事,需要手工配置路由规则,因此最好的方式还是核心交易数据用这种方式,非核心数据还是用ES这种集群中间件来做,简化代码开发。 来源: oschina 链接: https://my.oschina.net/u/778683/blog/4955261