标签目录:摩登3平台评价

摩登3内部554258_Redis的8大数据类型,写得非常好!

来源:https://blog.itzhouq.cn/redis2 NoSQL 开发中或多或少都会用到,也是面试必问知识点。 最近这几天的面试每一场都问到了,但是感觉回答的并不好,还有很多需要梳理的知识点,这里通过几篇 Redis 笔记整个梳理一遍。关注公众号Java技术栈回复面试也可以刷我整理的系列面试题。 Redis 的八大数据类型 官网可查看命令:http://www.redis.cn/commands.html Redis-key 127.0.0.1:6379> keys *(empty list or set)127.0.0.1:6379> set name xxxOK127.0.0.1:6379> keys *1) "name"127.0.0.1:6379> set age 1OK127.0.0.1:6379> keys *1) "age"2) "name"127.0.0.1:6379> exists name  # 判断key 是否存在(integer) 1127.0.0.1:6379> exists name1(integer) 0127.0.0.1:6379> move name 1(integer) 1127.0.0.1:6379> keys *1) "age"127.0.0.1:6379> set name yyyOK127.0.0.1:6379> expire name 10  # 设置key的过期时间,单位是秒(integer) 1127.0.0.1:6379> ttl name  # 查看当前key的剩余过期时间(integer) 7127.0.0.1:6379> ttl name(integer) -2127.0.0.1:6379> type age  # 查看当前key的类型string127.0.0.1:6379> Redis 有以下 8 种数据类型 1、String(字符串) 127.0.0.1:6379> set key1 v1   #设置值OK127.0.0.1:6379> get key1"v1"127.0.0.1:6379> append key1 "hello"  # 追加值,如果不存在,相当于 set key(integer) 7127.0.0.1:6379> get key1"v1hello"127.0.0.1:6379> strlen key1  # 获取字符串长度(integer) 7127.0.0.1:6379> 自增、自减 127.0.0.1:6379> set views 0OK127.0.0.1:6379> get views"0"127.0.0.1:6379> incr views  # 自增 1(integer) 1127.0.0.1:6379> get views"1"127.0.0.1:6379> decr views       # 自减 1(integer) 0127.0.0.1:6379> decr views(integer) -1127.0.0.1:6379> get views"-1"127.0.0.1:6379> incrby views 10  # 设置步长、自增 10 (integer) 9127.0.0.1:6379> decrby views 5      # 设置步长、自减 5(integer) 4 字符串范围 127.0.0.1:6379> set key1 "hello,world!"OK127.0.0.1:6379> get key1"hello,world!"127.0.0.1:6379> getrange key1 0 3  # 截取字符串\[0, 3\]"hell"127.0.0.1:6379> getrange key1 0 -1  # 获取全部的字符串,和 get key一样"hello,world!"127.0.0.1:6379> 替换: 127.0.0.1:6379> set key2 abcdefgOK127.0.0.1:6379> get key2"abcdefg"127.0.0.1:6379> setrange key2 1 xx(integer) 7127.0.0.1:6379> get key2"axxdefg"127.0.0.1:6379> setex(set with expire):设置过期时间 和setnx(set if not exist):不存在再设置(在分布式锁中会经常使用) 127.0.0.1:6379> setex key3 30 "hello"  # 设置 30 秒后过期OK127.0.0.1:6379> ttl key3     # 剩余过期时间(integer) 25127.0.0.1:6379> setnx mykey "redis"   # mykey 不存在时设置成功(integer) 1127.0.0.1:6379> keys *1) "key2"2) "key1"3) "views"4) "mykey"127.0.0.1:6379> setnx mykey "mongoDB"  # mykey 存在时设置失败(integer) 0127.0.0.1:6379> get mykey     # mykey 值不变"redis"127.0.0.1:6379> mset 和 mget 127.0.0.1:6379> mset k1 v1 k2 v2 k3 v3  # 同时设置多个值OK127.0.0.1:6379> keys *1) "k1"2) "k3"3) "k2"127.0.0.1:6379> mget k1 k2 k3   # 同时获取多个值1) "v1"2) "v2"3) "v3"127.0.0.1:6379> msetnx k1 v1 k4 v4       # msetnx 是一个原子性的操作,要么一起成功,要么都失败(integer) 0127.0.0.1:6379> get k4(nil)127.0.0.1:6379> 对象 set user:1 {name:zhangsan, age:3}     # 设置一个 user:1 对象 值为 json  字符来保存一个对象127.0.0.1:6379> mset user:1:name zhangsan user:1:age 2OK127.0.0.1:6379> mget user:1:name user:1:age1) "zhangsan"2) "2"127.0.0.1:6379> getset:先 get 再 set 127.0.0.1:6379> getset db redis  # 如果不存在值,则返回 nil(nil)127.0.0.1:6379> get db"redis"127.0.0.1:6379> getset db mongodb  # 如果存在值,获取原来的值,并设置新的值"redis"127.0.0.1:6379> get db"mongodb"127.0.0.1:6379> String 的使用场景:value 除了是字符串以外还可以是数字 计数器 统计多单位的数量 粉丝数 对象缓存存储 2、List(列表) 基本的数据类型,列表。 在 Redis 中可以把 list 用作栈、队列、阻塞队列。 list 命令多数以 l开头。 127.0.0.1:6379> lpush list one   # 将一个值或者多个值,插入到列表的头部(左)(integer) 1127.0.0.1:6379> lpush list two(integer) 2127.0.0.1:6379> lpush list three (integer) 3127.0.0.1:6379> lrange list 0 -1   # 查看全部元素1) "three"2) "two"3) "one"127.0.0.1:6379> lrange list 0 1    # 通过区间获取值1) "three"2) "two"127.0.0.1:6379> rpush list right   # 将一个值或者多个值,插入到列表的尾部(右)(integer) 4127.0.0.1:6379> lrange list 0 -11) "three"2) "two"3) "one"4) "right"127.0.0.1:6379> 弹出 pop 127.0.0.1:6379> lrange list 0 -11) "!"2) "world"3) "world"4) "hello"127.0.0.1:6379> lpop list  # 移除list的第一个元素"!"127.0.0.1:6379> lrange list 0 -11) "world"2) "world"3) "hello"127.0.0.1:6379> rpop list   # 移除list的第一个元素"hello"127.0.0.1:6379> lrange list 0 -11) "world"2) "world"127.0.0.1:6379> 索引 Lindex 127.0.0.1:6379> lrange list 0 -11) "hjk"2) "world"3) "world"127.0.0.1:6379> lindex list 1  # 通过下标获取list中的某一个值"world"127.0.0.1:6379> lindex list 0"hjk"127.0.0.1:6379> Llen 长度: 127.0.0.1:6379> llen list(integer) 3127.0.0.1:6379> 移除指定的值: 127.0.0.1:6379> lrange list 0 -11) "hjk"2) "world"3) "world"127.0.0.1:6379> lrem list 1 world  # 移除list集合中指定个数的value,精确匹配(integer) 1127.0.0.1:6379> lrange list 0 -11) "hjk"2) "world"127.0.0.1:6379> lpush list hjk(integer) 3127.0.0.1:6379> lrange list 0 -11) "hjk"2) "hjk"3) "world"127.0.0.1:6379> lrem list 2 hjk(integer) 2127.0.0.1:6379> lrange list 0 -11) "world"127.0.0.1:6379> trim 截断 127.0.0.1:6379> lrange mylist 0 -11) "hello1"2) "hello2"3) "hello3"4) "hello4"127.0.0.1:6379> ltrim mylist 1 2 # 通过下标截取指定长度,这个list已经被破坏了,截断之后只剩下截断后的元素OK127.0.0.1:6379> lrange mylist 0 -11) "hello2"2) "hello3"127.0.0.1:6379> rpoplpush :移除列表的最后一个元素,将他移动到新的列表中。 127.0.0.1:6379> lrange mylist 0 -11) "hello1"2) "hello2"3) "hello3"127.0.0.1:6379> rpoplpush mylist myotherlist  # 移除列表的最后一个元素,将他移动到新的列表中。"hello3"127.0.0.1:6379> lrange mylist 0 -1  # 查看原来的列表1) "hello1"2) "hello2"127.0.0.1:6379> lrange myotherlist 0 -1  # 查看目标列表中,确实存在该值1) "hello3"127.0.0.1:6379> lset:将列表中指定下标的值替换为另一个值,更新操作 127.0.0.1:6379> exists list  # 判断这个列表是否存在(integer) 0127.0.0.1:6379> lset list 0 item  # 如果不存在的话,更新会报错(error) ERR no such key127.0.0.1:6379> lpush list value1(integer) 1127.0.0.1:6379> lrange list 0 0 1) "value1"127.0.0.1:6379> lset list 0 item  # 如果存在,更新当前下标的值OK127.0.0.1:6379> lset list 1 other  # 如果不存在的话,更新会报错(error) ERR index out of range127.0.0.1:6379> linsert:将某个具体的value插入到列表中某个元素的前面或者后面 127.0.0.1:6379> lrange mylist 0 -11) "hello1"2) "hello2"127.0.0.1:6379> linsert mylist before "hello2" hello(integer) 3127.0.0.1:6379> lrange mylist 0 -11) "hello1"2) "hello"3) "hello2"127.0.0.1:6379> linsert mylist after "hello2" hello(integer) 4127.0.0.1:6379> lrange mylist 0 -11) "hello1"2) "hello"3) "hello2"4) "hello"127.0.0.1:6379> 小结: list 实际上是一个链表,前后都可以插入 如果key不存在,创建新的链表 如果移除了所有的值,空链表,也代表不存在 在两边插入或者改动值,效率最高。 3、Set (集合) 127.0.0.1:6379> sadd myset "hello"  # set 集合中添加元素(integer) 1127.0.0.1:6379> sadd myset "world"(integer) 1127.0.0.1:6379> smembers myset      # 查看指定Set的所有值1) "world"2) "hello"127.0.0.1:6379> sismember myset hello  # 判断某一个值是不是在set中(integer) 1127.0.0.1:6379> sismember myset hello1(integer) 0127.0.0.1:6379> 127.0.0.1:6379> scard myset  # 获取集合中的个数(integer) 2127.0.0.1:6379> sadd myset "hello2"(integer) 1127.0.0.1:6379> smembers myset   1) "world"2) "hello2"3) "hello"127.0.0.1:6379> srem myset hello   # 移除元素(integer) 1127.0.0.1:6379> smembers myset1) "world"2) "hello2"127.0.0.1:6379> 127.0.0.1:6379> smembers myset1) "kkk"2) "world"3) "hjk"4) "hello2"127.0.0.1:6379> srandmember myset   # 随机抽取一个元素"hjk"127.0.0.1:6379> srandmember myset"hello2"127.0.0.1:6379> srandmember myset 2   # 随机抽取指定个数的元素1) "world"2) "hello2"127.0.0.1:6379> srandmember myset 21) "hello2"2) "hjk"127.0.0.1:6379> 127.0.0.1:6379> smembers myset1) "kkk"2) "world"3) "hjk"4) "hello2"127.0.0.1:6379> spop myset  # 随机删除元素"hjk"127.0.0.1:6379> smembers myset1) "kkk"2) "world"3) "hello2"127.0.0.1:6379> spop myset"hello2"127.0.0.1:6379> smembers myset1) "kkk"2) "world"127.0.0.1:6379> 127.0.0.1:6379> smembers myset1) "kkk"2) "world"127.0.0.1:6379> sadd myset2 set2(integer) 1127.0.0.1:6379> smove myset myset2 "kkk"   # 将一个特定的值,移动到另一个set集合中(integer) 1127.0.0.1:6379> smembers myset1) "world"127.0.0.1:6379> smembers myset21) "kkk"2) "set2"127.0.0.1:6379> 127.0.0.1:6379> smembers key11) "b"2) "a"3) "c"127.0.0.1:6379> smembers key21) "e"2) "d"3) "c"127.0.0.1:6379> sdiff key1 key2   # 差集1) "b"2) "a"127.0.0.1:6379> sinter key1 key2         # 交集1) "c"127.0.0.1:6379> sunion key1 key2  # 并集1) "e"2) "a"3) "c"4) "d"5) "b" 4、Hash(哈希) 也是 key – value 形式的,但是value 是一个map。 127.0.0.1:6379> hset myhash field xxx  # set 一个 key-value(integer) 1127.0.0.1:6379> hget myhash field   # 获取一个字段值"xxx"127.0.0.1:6379> hmset myhash field1 hello field2 world  # set 多个 key-valueOK127.0.0.1:6379> hmget myhash field field1 field2   # 获取多个字段值1) "xxx"2) "hello"3) "world"127.0.0.1:6379> hgetall myhash    # 获取全部的数据1) "field"2) "xxx"3) "field1"4) "hello"5) "field2"6) "world" 127.0.0.1:6379> hdel myhash field1  # 删除指定的key,对应的value也就没有了(integer) 1127.0.0.1:6379> hgetall myhash1) "field"2) "xxx"3) "field2"4) "world"127.0.0.1:6379> 127.0.0.1:6379> hlen myhash  # 获取长度(integer) 2127.0.0.1:6379> hexists myhash field1   # 判断指定key是否存在(integer) 0127.0.0.1:6379> hexists myhash field2(integer) 1127.0.0.1:6379> hkeys myhash  # 获取所有的key1) "field"2) "field2"127.0.0.1:6379> hvals myhash  # 获取所有的value1) "xxx"2) "world"127.0.0.1:6379> 127.0.0.1:6379> hset myhash field3 5(integer) 1127.0.0.1:6379> hincrby myhash field3 1  # 指定增量(integer) 6127.0.0.1:6379> hincrby myhash field3 -1(integer) 5127.0.0.1:6379> hsetnx myhash field4 hello  # 如果不存在则可以设置(integer) 1127.0.0.1:6379> hsetnx myhash field4 world  # 如果存在则不能设置(integer) 0127.0.0.1:6379> Hash 适合存储经常变动的对象信息,String 更适合于存储字符串。关注公众号Java技术栈,回复 Redis,可以获取我整理的 Redis 系列教程。…

摩登3登录网站_亚马逊首席技术官预测2021:八大技术趋势改变世界

2020年12月18日,在为期三周的亚马逊re:Invent全球大会即将闭幕之际,亚马逊全球副总裁、首席技术官Werner Vogels博士发表压轴演讲,分享了他对2021年的科技趋势的预测。Werner也回顾了2020年,他表示,2020年是如此的与众不同,无论企业还是政府机构,工作和运营方式都彻底发生了改变。而帮助我们应对巨变的,是科技。在线课堂帮助孩子们继续接受教育,在线会议代替商务会议室、酒吧咖啡厅会面,在线视频让人们继续拥有电影之夜,科技帮助人们养家糊口、教育孩子和工作协同,隔离在家也能自娱自乐。2020年的疫情没有让我们放慢脚步,反而加速了我们向数字世界迈进。在他看来,正是得益于这一加速变化,2021年将成为各种变革的启动台。以下就是他对明年及未来发展的预测。 1. 无远弗届,云将无处不在(2021年,云向边缘的推进将进一步加速) 所有云功能都集中在数据中心的时代正在开始消失。你会发现,云应用可以帮助海上船只提高性能,帮助飞机穿越天空,云应用嵌入汽车,进入家庭生活。不只是设备密集的数据中心,农村地区、野外,甚至空中、近地轨道,都可以获得强大的云存储及计算能力。云无处不在。 从AWS的视角看,AWS部署了数量众多的云数据中心区域和接入点,让云技术向全球各地的客户不断靠近。AWS Snowball被部署到夏威夷的火山边、南极洲的研究中心,收集PB级的数据。AWS Outposts将云的触角延申到客户的本地机房。AWS Local Zones将精选的云基础设施部署到更靠近客户需要的地方,帮助城市地区的客户迅速精减其累赘的数据中心。厨房里,健身房的自行车上,边缘设备可以借助AWS IoT Greengrass彼此相连。随着5G网络的扩展,运营商开始部署AWS Wavelength区域,让5G终端上的应用可以充分发挥5G网络低延迟、高带宽的优势。当网络的最远端都能高速地连接到云端,伟大的事情就会发生。 当延迟消除了,一些需要极低延迟的操作,从自动驾驶到自然语音处理和翻译,对重要基础设施的主动管理,就不再需要往返于地球的偏远角落和中心服务器之间,可以在最需要结果的地方就地进行。结果是什么呢?无人驾驶汽车成为现实,您可以开始与智能语音助手Alexa进行更自然的对话,工厂、住宅和办公室空间变得更加高效灵活。而且,如果你喜欢玩游戏,无论身在何处,都不必担心延迟影响游戏体验,可以将你的游戏技能发挥到极致。 云的概念从一个中心点延伸出来,进入人们日常的生活、工作环境,将有越来越多原本在云中运行的软件在身边运行,改善人们的生活,从医疗保健到交通运输、娱乐、制造等等。2021年,云向边缘的推进将进一步加速。 2. 机器学习的互联网(机器学习从云端延伸到边缘) 数据正在爆炸式增长。今天,一小时产生的数据,比2000年全年产生的数据还要多。未来三年内产生的数据,将比过去30年的还要多。2020 年,科学研究人员、制药公司、政府和医疗机构将所有资源转向疫苗开发、新的疗法,以及其它帮助我们对抗疫情的手段。无论你是不是数据科学家,都会对数据增长曲线有所认识。我们需要处理海量数据的能力。无论是医疗还是别的什么应用,处理所有这些信息的唯一实际方法,就是使用数据摄取和聚合工具,跟机器学习模型相结合,帮助我们理解这些信息。因此,毋容置疑,机器学习在2020年已经成为主流。 机器学习历来是一个计算量很大的工作负载,只能在最强大的硬件上运行。但是随着软件和芯片技术的进步,情况正在改变。通过组合使用AWS多种技术,软件和硬件在边缘端适配,可以发挥出比以往更大的作用。 云向边缘端不断地推进,明年将有更多行业和政府机构加速采用机器学习。在制造业,机器学习将融入生产线,实时发现生产异常。在农业领域,机器学习可以帮助农民更明智地使用宝贵的资源,例如土壤和水。 在世界上以小农户为主的地区,例如整个东南亚和非洲,将机器学习模型的使用推向新的应用领域,在更边缘的地方收集数据,带来的改变将是革命性的,将有助于农户提高收成,并且帮助他们提高售价。 Werner说他曾在东南亚拜访过一个AWS客户叫HARA。HARA总部位于印度尼西亚雅加达,他们使用机器学习分析东南亚成千上万小农户的数据。通过人员和设备在田间收集数据,包括农场的季节性生长周期,种植作物需要多少投入,从中可以获得多少收入。这种分析有助于农户获得合理的信贷。随着新冠疫情全球爆发,HARA正在使用其平台识别最需要食物的地方和人,与拥有食物的农户相匹配,并找出两者之间最佳的物流方式。新冠疫情为人类带来棘手的问题,但是科技可以帮助解决这些问题。 机器学习不断扩展,机器对机器的连接将呈爆炸式增长。根据思科的年度互联网报告, 2018年,互联网上只有33%的连接是机器对机器的连接。如果你有一个Echo智能家居产品,或者正在关注汽车行业的快速发展,那么你应该已经看到即将发生的事情,连接云的传感器和设备正在激增。Werner预计,到2021年,这一比例将超过50%。 机器对机器的连接不断增加,更多的数据注入机器学习模型,将出现更多针对机器学习的定制芯片。通过AWS Inferentia,可以在电力和计算方面降低机器学习成本。成本不断降低,性能不断提高,越来越多的机器学习应用场景在边缘执行运算,在边缘建立新模型。对于需要低延迟的应用 来说,这是一个颠覆性的创新。 现实的例子是今年席卷澳洲丛林或者美国西海岸的山火。未来,在边缘设备运行的机器学习模型可以帮助人们,根据历史上的火灾情况,在地面逐秒模拟当前的情况,不用回到中央数据中心,就可以预测火灾危险。边缘设备产生的数据,可以帮助救灾机构预防和扑灭火灾,让我们在世界各地可以看到更准、更快版本的 “今日火灾风险”提示。 如上,机器学习应用在医疗保健领域,用于为最需要的人提供食物,应对山火等气候变化的影响,技术、专家与决策者和社区合作,可以对人们身边的世界产生积极的影响。 3. 2021年,图像、视频和音频的表达将超过文字 几年前,《连线》杂志的一篇文章中,Werner谈到了声控计算的迅速崛起,新兴的用户界面,让人类可以用更自然的方式与机器交流、进行人与人之间的交流。这一趋势进入2021年及以后,Werner认为键盘会继续没落,以渐进的方式被淘汰。 在过去一年,全球疫情让人们与外界隔离,越来越多地通过音频、视频和图像进行通信。随着人们更多地使用多媒体的方式进行交流,在屏幕上产生的文字数量相对减少。在Twitter上,平均每天有80%的消息包含图像或视频,或者仅仅是图像或视频。今年夏天,Twitter开始为iOS用户推出音频推文,进一步明晰了这一趋势。快速降低的成本和在云中存储数据的能力,对这一趋势起到了一定的推动作用。 企业要与客户保持联系,更要敏锐地意识到这些习惯的变化,客户会不再依靠键盘、鼠标或其它机械的方式,与企业的产品和服务进行互动。所以企业应该探索从键盘转向更自然的用户界面。Alexa允许客户用语音进行亚马逊购物,其应用情况令人兴奋。 向更自然的交流方式的转变,也让服务和信息的获取更加公平。对那些从未学会读写的人来说,声音可能是他们获取信息的唯一方式。例如在加纳,Cow Tribe公司通过简单的语音命令向牧民分派疫苗、饲料和兽医。不能操作触摸板或键盘的残疾人,可以通过语音,让屏幕显示去年夏天的照片,从附近的餐馆点菜,或者让智能音箱给孩子打电话。 另外, Twitter和其它地方的所有视频、音频和图像都将成为数据源,可以提供新的洞见,产出新的产品和服务。拿音乐来说,随着人们向数字音乐过渡,音频已成为分析数据的来源,不仅可以播放你喜欢的歌曲,而且帮助你跟踪潮流趋势,发现新的艺术家;结合乐曲、流派和艺术家的历史,将音乐匹配到情绪、言语片段或位置地点。 2021年及以后,从社交平台到业务运营的所有领域,音频、视频和图像的使用将继续取代文字,云技术将发挥重要作用,满足这一需求。 4. 科技将改变现实世界,就像改变数字世界一样 2020年,社交隔离闯入人们的生活。隔离让人们有机会审视、再思考,我们的城市是如何运作、如何呼吸、如何流动的。我们生活和工作的许多地方,都是建立在几十年的假设之上(或者有几百年的历史,取决于你的居住地),这些假设不再成立,或者说在此次全球疫情中表现不佳。 在高级数据分析的帮助下,2021年人们将开始思考,如何更好地设计城市,既能做到社交隔离,又不会感到相互之间遥不可及。这将会是数字和物理世界的真正融合。 例如,使用先进的数据分析技术和机器学习,城市能够分析人员流量,了解行人在不同情况下如何走动,如何进入体育场、出入杂货店和地铁站。多年来,大型商场一直在使用这种技术分析特定时刻的人流量,让人们在最佳时刻路过广告或促销牌子。将机器学习模型加入进来,我们就可以在瓶颈和危险点出现之前对其进行预测。 我们可以预测每小时的行人流量,在夏季旅游旺季或冬季流感季提供安全通勤建议。试想在一座博物馆,可以借助这些技术,很快知道如何摆放艺术品最好,更好地设计洗手间出入口,防止人们相互碰撞,保持安全的社交距离。 现实世界的另一个巨大转变,更大程度上将体现在金融方面,人们口袋里的现金正在迅速消失。新冠疫情带来的最大变化之一是无现金支付兴起。世界各地的一些酒吧和餐馆开始禁止使用现金。新的在线支付平台在崛起,他们的业务建立在云上,以区块链为例,底层加密和分类账系统(区块链是一个去中心化的电子分类账系统)是基于云的。这样的支付选择会越来越多,全世界将进一步加速采用数字技术,取代陈旧的、持续了几个世纪的支付方式。 5. 远程学习在教育中挣得一席之地 在过去几年里,几乎每个行业都发生了根本性的变化,只有教育是个例外,大多数教育机构的运作方式,仍然与我很多很多年前上学时并无二致。然而,当在线课程项目如Coursera或在线服务Chegg出现、教育方式正在出现一些缓慢变化时,新冠疫情让教育界经历了一场快速且不可逆转的重塑,其程度几乎超过了其它任何行业。 Werner说,最近他和波兰华沙的一些高中生进行了交谈,他们在用社交学习网站Brainly完成学校课业,通过线上课堂互相帮助。在疫情中绝望的父母们,都希望确保孩子在新的远程教育环境中真正在学习,因此,像Brainly这样的在线学习工具应运而生,爆炸性增长。 在疫情期间,技术在儿童教育方面发挥了巨大作用。明年,当人们验证了远程学习的有效性,而且对某些人来说或许是更好的选择,远程学习将在教育中发挥更积极和持久的作用。 另一个很好的例子,是黑人女孩代码(BGC)创始人Kimberly Bryant所做的项目。与所有教育者一样,在疫情期间,Kimberly只能在线上为7-17岁的女孩开设计算机科学课程。以往,BGC教室一年能招收约5500名学生,但今年春季仅用一个月的时间,学生数量就几乎达到了全年数量的一半,加入的女孩来自世界各地。Kimberly说,BGC不再会只有面授的教学形式了,她已经看到了自己能达到的规模,以及她可以帮助更多的来自世界各地的女孩。 今年的疫情大流行以及其它显而易见的变化,都迫使人们做出适应。但在线课程的意义不只是发生了全球健康危机才能体现。任何时候都可以选择接受远程教育(和工作)意味着,孩子们生病时也可以呆在家里上课,不会落后于同学。如果根本没有学校可上,只要有互联网,至少有可能接受某种形式的教育。 毫无疑问,应该把孩子们送回教室,让他们有面对面的交流,但还是可能有其它事件的干扰。远程课堂能使学校的教学系统和学生们,灵活应对各种突发事件,无论遇到疫情大流行、自然灾害还是人为灾难,都能确保学习不被中断。 6. 小企业竞相上云,东南亚和撒哈拉以南的非洲将成为领跑者 2021年及以后,一个巨大的变化是,小企业开始利用先进的云技术服务客户。大量优秀的技术和服务提供商将会涌现,服务于这些小企业。技术将帮助小企业做各种事情,从启动一个聊天机器人回答常见问题,到几分钟内让一个超简单的CRM系统就绪运行。小企业能够拥有复杂架构和应用带来的益处,却无需投入时间和金钱来搭建它们。 实现这一点源于云无所不在的趋势。在过去的一年里,大多数小企业都体验到,在许多情况下,利用技术的能力决定了一个企业的生死存亡。很少有人知道,美国只有47%的中小企业拥有自己的网站,预计这一数字在2021年会有所增长。放眼全球,预计东南亚国家,如印度尼西亚、菲律宾、泰国和越南,以及非洲的肯尼亚、尼日利亚和南非,将引领这一趋势。 2020年之前,Werner花大量时间在世界各地与客户交谈,倾听他们利用科技克服挑战的故事。在这些地区,他看到了中小企业的巨大潜力,也从他们的故事中受到启示。在撒哈拉以南的非洲地区,90%的公司都是小企业,占国内生产总值的40%,经济总量达7000亿美元。而东南亚国家的一些重要行业中,小型和微型企业占了99%,主要集中在旅游业和手工业。目前,这些国家的在线普及率已经位居世界前列,即使周围的世界正在停摆,这些小微企业依然可以通过互联网与外界进行交易。 以印度尼西亚的Warung Pintar为例,这家公司通过云端连接食品小店,将技术服务与小企业结合。在印度尼西亚、东南亚和世界其它地方,随处可见这种街边小吃摊和小杂货店,它们通常都是独自经营,可以在那里买冷饮,买零食,也可以给手机充值。Warung Pintar小店提供了所有这些功能,只是这些小店和它们的运营都是连接到云上的。Warung Pintar的小店经营者通过一个亮黄色的小盒子,就可以实现库存管理和跟踪、销售分析、无现金支付、WIFI连接等。以前,这些小店生意的好坏只有依赖路边的人流量,现在小店店主们可以开始了解和培育他们的客户群。以前,他们库存和进货主要凭直觉采购,现在他们可以分析,了解卖什么最赚钱,什么货只是占地儿。 随着这些小企业将其独特的做法和独具特色的商品推向世界,他们很可能打破发达国家的许多商业惯例。他们既没有传统技术的负担,也没有固有思想的羁绊,因此发展空间广阔无限。 7. 2021年,量子计算将蓬勃发展 过去,一次又一次证明,一旦最先进、最复杂的技术被普及,让大众都买得起、用得到、能理解,巨变就会发生。 在 2019年 re:Invent大会上,AWS发布了一项全托管的量子计算服务Amazon Braket,帮助研究和开发人员加速研究,发现量子计算的潜力。2020年,AWS把这项服务开放给了所有人。 Amazon Braket出现前,只有全球顶尖的研究机构或最具经济实力的公司才能使用量子计算硬件,现在,任何人都可以用低至0.30美元的价格使用量子机器。 毫无疑问,这种深奥难懂的计算方法还处于早期阶段,但这也正是Braket的要点所在。在探索时期尤为重要的一点是,要让尽可能多的人涉足到量子计算领域。随着企业和机构开始初步尝试量子技术,这种专业知识开始走出学术界,围绕量子未来的各种商业计划、产品与服务雏形就会陆续出现,这也是Braket从实验室走向应用的途径。正如我们在机器学习发展过程中看到的,当软件生态系统真正能够服务于硬件时,成千上万的应用程序就会出现。 在未来十年左右的时间里,量子计算将改变很多领域,如化学工程、材料科学、药物发现、投资组合优化、机器学习等,但只有当越来越多的人现在开始设想这条未来之路,这些改变才能实现。 鉴于AWS有经验让所有人用得起、用得上和能理解先进的云技术,Werner认为2021年将是量子计算开始蓬勃发展的一年。 Werner说,为使科技发挥潜力,帮助全世界的人过上更好的生活,我们走遍世界,更应该走到世界的上空。 2019年,我们推出了AWS Ground Station卫星地面站服务。利用该服务,客户能够控制卫星通信、处理数据,扩大运营规模,而不必操心地面站基础设施的建设或管理。这项服务已经取得巨大成效,但我们认为这仅仅是一个开始。我预测,2021年及以后,太空将是我们在云技术方面取得最大进步的领域。 目前,卫星数据的接入和处理技术,已经用于帮助研究人员追踪冰川消退,海事机构保护脆弱的海洋保护区,农学家更准确预测粮食供给。同时,一些初创公司正在探索利用太空发展新一代快速而安全的网络。通过让每个开发者都能负担得起接入太空的费用,我期待看到这些创新能落地变成现实,帮助所有人成长和成功。

摩登3注册网址_欧瑞博携手Silicon Labs打造全新智能面板,改善智能家居体验

中国,深圳 – 2020年12月11日 – 致力于建立更智能、更互联世界的领先芯片、软件和解决方案供应商Silicon Labs(亦称“芯科科技”)与AIoT智能家居设备、系统和解决方案供应商欧瑞博(Orvibo)宣布双方正在开展合作,欧瑞博利用Silicon Labs的Zigbee无线技术开发了全新系列的智能家居设备。包括最新MixPad X系列在内的欧瑞博MixPad系列产品先后采用了Silicon Labs的Zigbee EFR32 MG21片上系统(SoC)解决方案,从而能可靠地将智能家居面板和开关与诸多应用连接,包括照明设备、窗帘、暖通空调(HVAC)系统和家居安防设备。 “欧瑞博正通过扩展其产品组合使智能家居体验更便捷、舒适和安全,Silicon Labs很自豪自己的无线技术可以在其中发挥关键作用,”Silicon Labs物联网产品营销副总裁Matt Saunders说道。“Silicon Labs行业领先的Zigbee无线解决方案可以通过简化开发和加快产品上市时间,来帮助企业合作伙伴将其创新性的智能家居产品推向市场,欧瑞博就是这方面一个很好的例证。” 欧瑞博为其MixPad智能面板、开关和控制器系列产品选用了Silicon Labs的Zigbee SoC。欧瑞博强大的系统硬件和Silicon Labs 的高性能、低功耗Zigbee无线解决方案无缝集成,可以支持许多不同的智能家居设备和应用的功能。MixPad是欧瑞博智能家居系统的中控,旨在提供便捷的操作,从而使家居生活体验更加自然和舒适。MixPad面板对用户而言非常直观,提供了触摸屏、语音和应用程序等控制方式,允许人们通过在家中安装一个用户界面来控制所有智能家居系统。 “欧瑞博一直在探索前沿的AIoT技术,Silicon Labs宝贵的智能家居行业洞察力和世界一流的物联网平台对我们而言是重要的资产,有助于我们描绘未来的发展路径,进而为我们的客户创造更好的、直观的智能家居生活体验。”欧瑞博创始人、董事长兼首席执行官王雄辉表示。“我们很高兴推出使用了Silicon Labs无线技术的现代化MixPad智能家居产品,期待看到这些产品在亚太市场及其他地区得到广泛应用。” 欧瑞博MixPad X最新系列产品已于11月19日正式推出。

摩登3新闻554258:_1分钟做一块PCB,动图指导!

尽管现在网上PCB制板已经非常快捷和便宜,甚至有的厂家提供免费测试板制作,但比起“一分钟制板”来制作测试电路板,发送出去制板还是时间太长。 对于需要测试的电路,通过快速制版,可以快速迭代,完成实验电路的实验。最终的正式电路板可以交由正规厂家帮助制作。 下面给出了通过快速制板直至焊接完成测试的具体过程: 1. 绘制PCB电路板: 2. 设置只打印TOP LAYER和过孔层 3. 使用激光打印机打印在热转印纸上 4. 这个电路板设置的最细的电线路为10mil 5.一分钟的制版时间是从激光打印机在热转印纸上打出电子线路黑白图开始算起。 6.对于单面电路板,只需一张就够了。 然后将其附着在一块大小合适的覆铜板上,在热转印机加热加压下,20秒便可以完成热转印。取出覆铜板,揭开热转印纸,便可以看到覆铜板上清晰的线路图。 7.然后将覆铜板放在震荡腐蚀槽内,使用盐酸和双氧水的混合腐蚀液,只需要15秒钟便可以去掉多余的铜层。 合适的盐酸,双氧水的配比,高速震荡的腐蚀槽是实现快速完美腐蚀的关键。 加水冲洗后便可以拿出腐蚀后的电路板。此时时间总共过去了45秒钟。 千万不要鲁莽的触碰高浓度的腐蚀液。否则获得的痛苦会让人记忆一辈子。 8. 再使用丙酮,将黑色的墨粉擦除掉,这样,一个实验PCB板便制作完毕了。 9. 在电路板表面涂抹助焊剂 10. 使用宽刀口烙铁给电路板上锡,便于后面的焊接 11. 去掉助焊剂,在涂抹表贴器件焊接助焊剂,完成器件的焊接 12. 由于预涂焊锡,所以焊接器件比较容易 13. 焊接完毕,使用洗板水清洗电路板 14. 电路板的局部 15. 电路板上有多处的短接线 16. 短接线通过0603, 0805, 1206的零欧姆电阻完成 17. 十分钟之后,电路板便可以进行实验了 18. 处在测试过程中线路板 19. 完成电路的调试 一分钟热转印制版法,可以将硬件的制作变得和软件编程与一样方便。待到电路分块测试完毕之后,最终再使用正式制版方法完成电路的制作。 这种方法不仅节约了实验的费用,更重要的是节省了时间。一个好的想法,如果按照正常的制版周期,等上一两天才能够拿到电路板,兴奋的心情也会消磨殆尽了。 END 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

摩登3平台首页_Gartner:中国成2009全球服务器市场亮点

  日前,根据国际消息市场分析机构Gartner表示,因企业在技术产品领域的支出日益收紧,全球计算机服务器厂商在2008年第四季度的营收和发货量都有所下滑。   据Gartner表示,全球服务器发货量同比下滑近12%,营收下滑幅度超过15%,为131亿美元。Gartner资深研究分析师希拉尔·科塔表示:“由于用户削减成本和支出,尽可能推迟项目,几乎所有产品都出现下滑迹象。”北美地区服务器营收同比下滑14.6%,欧洲服务器营收同比下滑近21%,亚太地区营收同比下滑近15%。只有日本营收略有增长,同比增长4.7%。   按服务器营收排名,IBM依旧在全球排名第一,为44亿美元,但同比下滑了17.4%;惠普排名第二,为39亿美元,同比下滑了10%;排名第三的戴尔同比下滑11.2%;Sun同比下滑15%;富士通-西门子同比下滑9%。   与之相比,我国X86服务器市场发展迅速。国内有关数据显示,2008年中国X86服务器市场整体容量为67.75万台,同比增速14.1%,销售额规模达到123.23亿元,同比增长11.1%。业内人士指出,2009年国内服务器市场竞争将更趋激烈,但国家着眼于提升宏观经济的4万亿投资计划,以及电信重组、3G发放、新增值税方案实施等,都将成为服务器市场利好消息。

摩登3平台注册登录_燃料电池车离散MRAC电机控制系统的DSP软件设计

燃料电池车是以氢气为燃料,氢气与大气中的氧气发生化学反应,通过电极将化学能转化为电能,以电能作为动力驱动汽车前进。燃料电池汽车具有高效率、无污染、零排放、无噪声等高科技优势,代表了未来汽车使用新型能源、先进科技以及追求环保的发展趋势,领导着汽车工业革命的新潮流。电机驱动系统是燃料电池车的心脏,直接影响着燃料电池车性能的优劣。数字信号处理器(DSP)的发展使各种先进的控制策略应用于电机驱动系统成为可能。模型参考自适应控制在电动汽车中的应用,能够提高电动汽车电机驱动系统性能,加速电动汽车产业的发展。 1  燃料电池车及其离散MRAC电机控制系统 本文所研究的燃料电池车电机是型号为XQ-5-5H的5 kW直流牵引电机,对电机的控制采用包括电流环和速度环的双闭环调速系统,其结构框图如图1所示。图中虚线方框内由以DSP为核心的控制系统来实现,本文主要探讨其软件的设计。 对双闭环调速系统的设计在此不做详细讨论,这里只给出设计结果。对电流的调节采用传统的PI调解,其传递函数为: 式中:K为PI调节器比例部分的放大系数;τ为积分时间常数。 对速度的调节采用自适应调解方法,为了便于计算机实现,采用离散模型参考自适应控制,结构图如图2所示。对于其具体说明参见文献。 2控制系统软件设计 2.1  硬件系统介绍 基于TMS320LF2407A的燃料电池车电机驱动控制系统硬件系统方框图如图3所示,主要包括给定信号检测电路、电流检测电路、速度检测电路、PWM输出电路和DSP外部电路。 2.2  主程序设计 主程序包括初始化程序和循环等待2部分。系统上电或复位后主程序自动运行,它首先将系统初始化,主要包括硬件初始化即根据要求给各种硬件如时钟及看门狗模块、I/O模块、定时器、SCI模块、ADC模块、定时器、控制寄存器等赋值,以便各模块正常工作,以及程序全局变量初始化,主要包括电流PI调节、转速自适应控制调节参数初始化以及其他全局变量初始化,然后开中断并等待。 2.3 PWM中断处理程序设计 采用定时器周期中断标志启动A/D转换,当T1下溢时启动A/D转换,所检测的电流经处理后接模/数转换器的ADCIN00引脚,当转换完成后,中断标志位都被设置为1,则在A/D中断服务程序中将转换结果读出,完成1次A/D采样。转换结束后申请PWM中断,PWM中断完成主要的控制功能,流程图如图4所示。由于电机控制系统的机械时间常数远大于系统的电气时间常数,系统的速度环控制周期可比电流环控制周期大。该系统在每个PWM周期中都进行一次电流采样和PI调节,因此电流采样周期与PWM周期相同,可以实现实时控制,而速度环控制周期选为每100个PWM周期,对速度进行1次调节。在每个电流控制周期,被QEP单元计数的脉冲数被累加到变量speedcount中,变量speedflag从初始值speedstep(100)开始减1直到等于0,此时读取100个电流控制周期(1个速度控制周期)的总脉冲数进行速度计算,并将speedcount清零,将变量speedflag赋初始值,开始下一次速度脉冲计数。 2.4  电流PI调节器程序设计 式(1)给出的调节器为连续传递函数,为了便于计算机的实现,使用防积分饱和的PI调节器,其算法改进为:式中:K1=KP/τ;KC=KI/KP=T/τ,根据防饱和的PI调节器算法确定系统流程图如图5所示。 2.5  速度自适应程序设计 速度自适应调节算法在图2中已经给出,该算法为离散自适应算法,可直接用于程序设计。离散模型参考自适应分为参考模型和被控对象两部分,所以首先讨论参考模型的实现。对于二阶参考模型其离散方程可表示为:这样可以得到参考模型输出。被控对象速度输出y(k)由速度检测电路检测,可得预报误差: 可得u(k)。根据以上分析编写速度自适应控制程序,流程图如图6所示。3  结  语 自适应控制理论在燃料电池车电机控制系统中的应用,对于提高电动汽车的驱动性能具有较好的效果。本文探讨了在电机DSP控制系统中,离散模型参考自适应算法的实现,对于各种先进的控制策略在电动汽车中的应用进行了积极的探索,对于推动电动汽车产业的发展具有重要意义。

摩登3内部554258_新能源汽车遇瓶颈 国家应尽快规范充电标准

7月21日,由天津市电力公司城东供电分公司和天津市交通集团共同设计施工的普济河道电动汽车充电站开工建设。该充电站是天津市目前最大的电动汽车充电站,内设大型车充电车位12个,中小型充电车位6个,计划8月底建成投产。天津虽然不在5个私人购车补贴试点城市之列,但像不少国内其他城市一样,对该产业也是摩拳擦掌跃跃欲试。据悉,河南、江苏、山东等多省市都已经陆续出台专门建设充电站的规划目标。 如果要大范围的推广新能源汽车,通用的充电设备是必须的,否则将导致充电设备建设中大量资源的耗费,甚至会阻碍新能源汽车本身的发展。有业内人士就表示,纯电动汽车的产业化必须和充电模式、充电运营模式、基础设施建设结合起来才行。目前,有的企业研发出包括慢充、快充、快速更换电池三种模式,就是由于相关标准没有出来,企业要将所有充电模式都进行开发,而后等国家统一充电模式后,再确定发展方向,发展速度才能快起来。 私人购买新能源汽车的补贴方法已经出台,部分试点城市也已推出配套补贴政策。不过,新能源汽车目前实际销量很低,在售的为数不多的车型一个月才能卖出十几辆甚至几辆。中国要想在新能源汽车这个新兴产业取得立足之地,甚至占据主导地位,必然需要加快新能源汽车的推广速度,就目前来看,充电问题是消费者选择新能源汽车的主要障碍之一,而这一障碍的背后是标准的缺失。 然而,热情背后的一个尴尬现实是我国还没有充电站建设的国家标准,目前建设的充电站或充电桩多是根据车型需要而设计建设,并不具有通用性。同时,在技术标准上电网公司和汽车公司各有想法,谁来主导也仍未明确。 除了行业标准,充电设施的建设主体也是多方参与竞争。目前,较多的模式是电网公司与公交公司合建,或者电网公司与汽车生产厂家合建,也有汽车厂商打算自建,此外还有中石油、中石化等拥有加油站资源的巨头也打算加入。而从电动汽车开发处于领先地位的比亚迪来看,其目前推出的车型皆为反复充电而非更换电池模式。区别于传统汽车加油能在几分钟内完成,进行慢充和快充的充电站如果要为较多车辆服务,无疑对场地面积的要求更高,网点布局选择的难度也更大。在土地资源紧张的城市中,如何合理布局充电站网点、协调各方利益,也需要统一规划。 除了公用充电站,对于个人消费者而言,更需要解决的是在家门口的充电问题。据悉,在新能源汽车推广力度较大的深圳,有消息称供电部门将与住宅局、交警局、物业管理协会、相关小区业委会等联合,建立新能源汽车销售与配套设施联动机制。消费者购车后,供电部门将立即按车主提供的地点优先为其安装充电桩。此举可谓服务周到,但若是标准不统一,未来就可能出现增一车增一桩的情况,带来重复建设和资源浪费。因此,新能源汽车充电设施设备标准还应尽早规范。

摩登3平台登录_AMOLED显示器将成未来高阶手机应用主流

        David Brown:在小型手持装置方面,AMOLED绝对是锐不可挡的趋势,因为这些装置不论分辨率和色彩重现方面,在所有可能的应用领域都能有卓越的表现。但由于成本考量,加上市场上供应商不多,目前采用AMOLED为显示器主流 的速度已减缓。另外,如果AMOLED面板大于5吋,则对于大多数便携式产品来说,安装的费用通常就会太过昂贵。       目前市面上已有少数使用AMOLED的装置,而这类产品的显示器尺寸则都落在3至5吋的范围之间。而未来,随着制造商数量增加以及显示器的成本陆续降低,我认为AMOLED显示器会成为手机应用的主流。AnalogicTech也早已支援此市场,并主动研究此种显示器技术专用的电源管理解决方案。 

摩登三1960_中国科学院微电子所:龙芯CPU封装成功

2010年7月,龙芯CPU第一款国产化封装产品在中国科学院微电子所系统封装技术研究室取得成功。这是该研究室继计算机多CPU高速互连的高性能专用交换芯片封装成功后,又一里程碑式的成果,同时该产品封装的成功也标志着我国国产高端CPU芯片开始走入封装完全国产化时代。   该产品用户曾委托国内多家专业封装单位分别尝试对该CPU进行封装均未获得成功,微电子所系统封装技术研究室在接到任务后,集体攻关,仅仅在两个多月的时间里,完成了设计仿真优化并组织国内相关生产厂家进行封装并最终通过测试,获得了用户的高度评价。   该CPU封装体为500I/O的WB-BGA结构,芯片时钟频率为800MHz,有超过800条线焊,焊盘间距仅60微米(50/10),功耗大于20瓦,采用下空腔阶梯线焊结构,该结构是目前先进封装结构之一,具有优良的热管理特性,是国际上高端芯片采用的主要封装形式。由于该产品封装难度高,此次也是在国内封装产品中首次使用该项技术。

摩登3注册登录网_国家仪器发布面向USB X系列多功能数据采集设备

  美国国家仪器有限公司(National Instruments,简称NI)近日发布面向USB的X系列多功能数据采集(DAQ)设备。USB X系列设备将高性能模拟测量和控制通道,数字I/O和计数/定时器集成到一个即插即用的设备,工程师和科学家可以将这一设备用于多种便携式测试、测量和数据记录应用。USB X系列DAQ设备包括了多达32个模拟输入、4个模拟输出、48个数字I/O线和4个计数器。这八款全新设备速率从500kS/s多路模拟输入(AI)到每通道2 MS/s同步采样AI不等。   NI LabVIEW图形化编程以直观的图形化图标和线,通过流程图的方式,帮助工程师和科学家轻松开发用于USB X系列的完全自定义测试和测量应用。LabVIEW 2010可结合NI DAQ助手进行全新技术数据流盘实现管理,并可将数据从波形图导出到Microsoft Excel或NI DIAdem用于后期处理,从而简化了数据记录与分析。与其他NI DAQ设备相同,USB X系列设备也使用同样的多线程NI-DAQmx驱动软件,这样就可以利用X系列设备将LabVIEW或基于文字的编码从之前的应用中导出,用于其他地方。   两个关键技术使USB X系列设备不仅功能强大,而且简单易用:用于高级定时和触发的NI STC3技术和用于高速双向数据流盘的NI信号流技术。   所有USB、PCI Express和PXI Express X系列设备的核心是NI-STC3定时和同步技术,该技术协调模拟、数字和计数子系统的定时与触发功能。NI-STC3技术为X系列设备提供独立定时引擎,用于板载模拟和数字I/O子系统,使模拟和数字I/O能够以不同的速度独立执行或与同步一起执行。X系列设备的四个增强32-bit计数器可用于频率、脉冲宽度调制(PWM)和编码器操作,以及全新100 MHz时基。该时基可生成模拟和数字采样率,且分辨率5倍优于以往设备。      USB X系列设备中的NI信号流技术是利用基于信息的传输和设备端智能,提供USB高速双向数据传输,使其能够同时实现模拟、数字和计数操作的专利技术。利用这一技术,两款全新设备可进行同步采样,每款设备的八个模拟输入端口的采样速率可分别达到每个1.25MS/s和2MS/s。这些设备有32或64MS的板载内存,以确保USB高流量时仍可以进行限定的采集。所有通道的高采样率使这些设备非常适用于便携式超声波测试和瞬态记录应用。   每个USB X系列设备具有一个重新设计的铝制封装。全新封装提供了一个方便的盖子以确保信号配线的安全和防护,盖子上设备特有的引出线标签确保了快速决定与某个通道相对应的螺钉接头。该封装还包括了一个可锁定的USB端口,防止操作中的意外丢失。