深度学习工具caffe在windows上的性能表现真的没有在Linux上好吗

sponsored links
深度学习工具箱CAFFE在64位win7+VS2013环境下编译及运行
首先按照& joshua_1988&的两篇博客进行依赖库的配置和工程的创建
依赖库:http://blog.csdn.net/joshua_1988/article/details/
建立工程:http://blog.csdn.net/joshua_1988/article/details/
在这里说一下我跟原文有一些不同的地方:
1. 根据我的经验,一定要用vs2013,虽然joshua_应该也行,但是我尝试的时候发现caffe有一些用到c++11标准的地方,而vs2012对11标准支持较弱,会对一些11标准新加的东西报一些错,所以我后来还是装上了vs2013。而且要先装vs2013再装cuda,否则我发现在build configuration里没有启用cuda7.0的选项。
2. OpenBLas,joshua_1988用的0.2.14 for windows的openblas,官网上也有支持win平台的包。但是下载下来以后lib文件夹里并没有.lib文件,上文joshua_1988直接用的.dll.a文件,但是我用它却不成功。最后只好下了老一些的版本0.2.8的openblas发现里边有lib文件。
3. lmdb除了下载joshua_1988提到的三个文件,我记得我还额外下了一个inttypes.h。里边是一些#define。但是在编译的时候又会对这些define报错,我最后直接保留了这个头文件但是把内容注释掉了。
4. protobuf的库,直接build所有工程经常会失败几个,其实只要分别build这三个 libproto,libprotoc,protoc工程,生成需要的lib文件就可以了。
5. 在3rdparty/lib里并没有snappy64.lib文件。joshua_1988图中的libhdf5.lib和libhdf5_hl.lib在我这儿是&hdf5.lib和hdf5_hl.lib。记得debug的lib要自己改名加上d。在3rdparty/include中我还加入了openblas的include里的头文件。还加上了hdf5中hl里的头文件hdf5_hl.h以及同一个文件夹下的配套的h文件。
1. 把linker中的input中的libopenblas.dll.a改为.lib
2. 手动把hdf5_hl.h加到工程里。在c/c++的general里的addtional include directories里加入了3rdparty\include\openblas。
3. 最好不要加caffe目录下的test和gtest源文件,否则会报很多错,而且gtest里还有个main,跟caffe.cpp里的main冲突。
下面是我在完成joshua_1988博客内容以后遇到的问题及解决方法,基本按我自己搞得顺序。
1. 在H5public.h中报错,找不到H5pubconf.h。这玩意儿隐藏在hdf5文件夹的cmake\build里,就在build目录下,是编译自动生成的,拷贝到3rdparty\include\hdf5中。我也是在这个时候手动把hdf5_hl.h添加到工程里的。
2.&编译时报错:std::max和std::min都报错,网上查因为windows.h的原因。在windows.h里微软自己实现了max和min,好像会造成冲突。
解决std::min和max的问题:1. 给std::max std::min变成(std::max) (std::min)注意:我这样做无效。
& & & & & & & & & & & & & & & & & & & & & &2. 用std::max&double&,参数是long double的,不知道用std::max&double&会不会损失精度。
caffe.pb.h: float min()报错syntax error: ')'。解决办法:把FillerParameter中的min,max都改名,我改成了caffe_return_min/max。因为这个函数的作用就是返回类里的变量_min和_max。记得把引用的地方也改了,可以根据debug报错的位置来逐一改掉。
下边的语句会报 syntax error : 'constant'。
libgcc_s_sjlj-1.dll,我下了好多个才找到一个能用的。都放到system32就行。
8. 已经可以运行!然后就是很多需要改代码的地方了,比如传参的路径\和/还有很多变量我发现运行的时候都没赋上值,这些都得自己一步一步追踪程序改代码。我也正在改,后续会更新。
====================日更新===================
1. 开始逐句调试,结果一开始就发现FLAGS_solver这个变量 没赋上值。想了一会儿,果断在main里直接赋给这个变量以solver文件的路径。
2. 还有一点,记得给argc和argv赋值,参数可以参考caffe/example下任一例子的sh文件中的传参。比如train_lenet.sh中这么写的
./build/tools/caffe train --solver=examples/mnist/lenet_solver.prototxt
那么参数就是 ‘train’和'--solver=examples/mnist/lenet_solver.prototxt',在windows下也直接给这俩参数就行。记得solver路径改成自己的。
3. caffe.cpp的main函数跳到caffe.cpp的train函数,然后到solver.cpp的Solve方法中,然后进行net.cpp的初始化。结果在data_layer的初始化就跪了。(补充一点!一定记得先准备好数据,我进行到这儿的时候才想起来mnist的数据我都没下,搞毛呢!你可以准备lmdb和leveldb的数据,最好也准备好图片格式的原始数据。原因后边说)
等我从实验室服务器上下载了mnist的leveldb和lmdb的数据以后,再运行程序,还是报错。注意原始prototxt里用的是leveldb的数据,然后我就报了一个
Debug&Error!R6010-abort()&has&been&called
的错。当时我就蒙圈了,没见过这样的啊,上网查,也没有什么解释的清楚地,就有人说好像是内存泄漏啊指针之类的问题。这尼玛我上哪找去。
3.1 然后我果断在prototxt里换成了lmdb数据,反正哥都有。然后运行,又报错,这回是程序自己assert了错。我一跟踪,mdb_strerror报出来的,那就是lmdb中函数运行中出问题了。又跟踪,发现mdb_env_open这个函数总是返回错误,再跟就是lmdb的lib文件了。然后我又上网查,看看有没有别人有解决办法,很少,貌似有说的但是没什么有价值的,还看到一个外国人写的说leveldb在windows下根本搞不起,lmdb还可以但是也要改源码。然后又看到说lmdb版本不同生成的数据不通用。我靠,然后我就跑去编译caffe/tools下的convert_imageset工具了,工程配置跟caffe的工程一样,搞出来以后还是在mdb_env_open报错。我崩溃了!!!
4. 折腾了好久,实在搞不好。一怒之下我把data_layer换成了imagedata_layer。直接用图片做输入!!然后我先用matlab把mnist的数据都恢复成了图片,并保存了一个txt记录文件名和label给iamgedata_layer用,一共7w张图片。
5. 关于imagedata_layer,我在这里犯了两个错误。一是我把transform_param的scale参数删了。我没仔细看imagedata层的参数(在caffe.proto)里,反正脑子一抽就给删了以为没有这个参数。第二是图片是单通道的,记得设一个参数是is_color: false,我一开始没设。这两个错误第一个致命的,导致我在后来折腾半天并且对整个caffe工程都开始质疑了。第二个算是强迫症。
6. 换了层以后开始跑,好高兴呀,data层终于初始化过了,其他层也没有问题。然后就开始跑,我就干别的了。过一会儿回来看 跑完了。卧槽。loss=87.3365,而且从第二个100轮开始就停留在loss=87.3365了。准确率10%。我三观差点就颠覆了。这有问题啊,然后我就开始跟踪代码,找啊,毫无结果,大半天都干这个了。最后都快绝望了,后来的事实证明!!!千万不要删掉scale参数。。。scale是用来把0-255的数据变成0-1的。。。删了这个归一化就是找抽。
7. ok,运行成功!有图有真相。
倒数第六行,准确率accuracy = 0.991~~~
经过多天尝试,终于在我的64位WIN7上成功安装了theano,并运行了g++(否则速度就太慢了) 在32位WIN7上我安装的是pythonxy 成功运行了g++
但是换到64位没安装成功于是换成了AnacondaCE -------------------------------------------------------安装配置过程(32位同样 ...
Background:
64位VS2008/C++ Aim:
GDAL 32位win7+VS2008的情况可以参考:/zhangjun1130/archive//1602340.html写得很详细~ ///////////////////////// ...
我看有许多同学用Win 7/Win 8 学习汇编,现在好多人的内存升级了都用64位系统了,但是64位W7没有自带的DEBUG和MASM. 1.首先下载DOSBOX,(下面附带地址)它的作用就是让你在64位下使用32.16位的软件.如果不使用DOSBOX就会出现程序不兼容的对话框. 安装完DOSBox后,我们就能运行汇编后的程序了 打开DOSBox后,我们可以 ...
运行asp是提示Microsoft OLE DB Provider for ODBC Drivers 0xMicrosoftODBC Microsoft Access Driver 找不到文件 '未知的'.最近升级了电脑主机,淘宝买的,卖家把我装好了64位的win7和一些基本程序. 自己有个小程序是asp的,要让它运行起来,于是装上IIS(之 ...
参考说明:http://www.chromium.org/developers/how-tos/build-instructions-windows 准备条件
安装好vs2010 professional. 2:环境 安装vs2010 sp1补丁,下载地址 /en-us/download/details.a ...您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
面向Windows平台的深度学习工具使用指南.PDF 11页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
需要金币:150 &&
面向Windows平台的深度学习工具使用指南.PDF
你可能关注的文档:
··········
··········
面向 Windows 平台的深度学习工具
同济大学软件学院
1. Windows 版 Caffe 的安装与基本测试
1.1 Windows 版 Caffe 配置与编译
本节内容参考了 /Microsoft/caffe 里面的安装说明部分。
网上 windows 版本的 Caffe 现在很多,包括 BVLC 也有一个版本,但好像这个版本不能成功
安装。截止到 2017 年3月 29 日,BVLC 上面的windows caffe我自己安装依然有一些问题。
一个可以成功安装的版本 /Microsoft/caffe
下面介绍安装这个版本的 windows caffe 的一些具体问题
关于 visual studio,VS2015 好像不是很稳定,目前还是用 VS2013
CUDA用 CUDA 8.0 版本,并且用与之配合的 cudnn
cudnn 解压以后,形成一个 cuda 目录,把这个目录下的三个文件夹复制到 C:\Program
Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0目录之下,会与该目录下本来的三个文
件夹合并内容
注意:当把显卡的驱动安装成功,并且安装了 CUDA 之后,建议执行一下硬件检测程序,测
试一下硬件是否正常。这可以通过执行 C:\ProgramData\NVIDIA
Corporation\CUDA
Samples\v8.0\bin\win64\Release 目录下的 deviceQuery.exe 来测试。如果正常的话,会
出现类似下图的信息。
如果使用 python,需要安装 Anaconda Python 2.7
然后,在开始栏里面,运行“Anaconda Prompt”,安装几个组件
conda install ‐‐yes numpy scipy matplotlib scikit‐image pip
pip install protobuf
需要修改.\windows\CommonSps 里面的配置信息
&CudaVersion&8.0&/CudaVersion&
&PythonSupport&true&/PythonSupport&
&MatlabSupport&true&/MatlabSupport&
&TreatWarningAsError&false&/TreatWarningAsError&
在配置.\windows\CommonSps 时,会遇到关于 GPU 性能的配置,可参见一下列
Compute Capability
GTX660, 680, 760, 770
compute_30,sm_30
GTX780, Titan Z, Titan Black, K20, K40
compute_35,sm_35
GTX960, 980, Titan X
compute_52,sm_52
Nvidia Titan X
compute_61,sm_61
修改.\windows\CommonSps 里面关于python 和matlab 的安装路径
在编译过程中,如果遇到一个由 alt_sstream_impl.hpp 引起的问题,这个不要紧,只要用
Ctrs+S 重新save 一下就好了。
同时,会出现很多所谓的字符不能表达的 warning,不用管它即可。
如果编译的时候选择了 python 支持,但要注意 If your Python installation does not
正在加载中,请稍后...最新Github上各DL框架Star数量大PK | 附各框架性能对比分析-技术方案-@大数据资讯
你好,游客
最新Github上各DL框架Star数量大PK | 附各框架性能对比分析
作者:译者:王安阳
  很多神经网络框架已开源多年,支持机器学习和人工智能的专有解决方案也有很多。多年以来,开发人员在Github上发布了一系列的可以支持图像、手写字、视频、语音识别、自然语言处理、物体检测的机器学习框架,但并没有一种框架可以完美地解决你所有的需求。那么该如何选择最适合你的开源框架呢?希望下面带有描述的图表以及分析可以带给你以启发,以此来选择最适合你的业务需求的框架。
  下图总结了绝大多数Github上的开源深度学习框架项目,根据项目在Github的Star数量来评级,数据采集于2017年5月初。
  TensorFlow
  TensorFlow框架的前身是Google的DistBelief V2,是谷歌大脑项目的深度网络工具库,一些人认为TensorFlow是借鉴Theano重构的。
  Tensorflow一经开源,马上引起了大量开发者的跟进。Tensorflow广泛支持包括图像、手写字、语音识别、预测和自然语言处理等大量功能。TensorFlow遵循Apache 2.0开源协议。
  TensorFlow在号发布了其1.0版本,这个版本是对先前八个不完善版本的整合。以下是TensorFlow取得成功的一些列原因:
  TensorFLow提供这些工具:
  TensorBroad是一个设计优良的可视化网络构建和展示工具;
  TensorFlow Serving通过保持相同的服务器架构和API,可以方便地配置新算法和环境。TensorFlow Serving 还提供开箱即用的模型,并且可以轻松扩展以支持其他的模型和数据。
  TensorFlow编程接口包括Python和C++,Java,Go,R和Haskell语言的接口也在alpha版中支持。另外,TensorFlow还支持谷歌和亚马逊的云环境。
  TensorFlow的0.12版本支持Windows 7, 8, Server 2016系统。由于采用C++ Eigen库,TensorFlow类库可以在ARM架构平台上编译和优化。这意味着你可以不需要额外实现模型解码器或者Python解释器就可以在多种服务器和移动设备上部署训练好的模型。
  TensorFlow提供细致的网络层使用户可以构建新的复杂的层结构而不需要自己从底层实现它们。子图允许用户查看和恢复图的任意边的数据。这对复杂计算的Debug非常有用。
  分布式TensorFlow在0.8版本推出,提供了并行计算支持,可以让模型的不同 部分在不同设备上并行训练。
  TensorFlow在斯坦福大学,伯克利学院,多伦多大学和Udacity(2016年3月成立的在线学校)均有教学。
  TensorFlow的缺点有:
  每个计算流必须构建成图,没有符号循环,这样使得一些计算变得困难;
  没有三维卷积,因此无法做视频识别;
  即便已经比原有版本(0.5)快了58倍,但执行性能仍然不及它的竞争者。
  Caffe是贾扬清的作品,目前,贾扬清是Facebook AI平台的Lead。始于2013年末,Caffe可能是第一个主流的工业级的深度学习工具包。Caffe具有卓越的卷积模型,是计算机视觉领域最受欢迎的工具之一,且2014年ImageNet 大赛的获奖作品使用的就是Caffe框架。Caffe遵循BSD 2-Clasuse 协议。
  Caffe的高速使得它非常适合于科研和商业领域。利用一个NVIDIA K40 GPU,Caffe可以每天处理60M张图片,即推断1毫秒一张,训练4毫秒一张。使用最新的版本,甚至可以更快。
  Caffe底层是用C++实现的,可以在各种设备上编译。Caffe是跨平台的并且提供Windows接口,它提供C++,Python和Matlab语言接口。Caffe拥有着庞大的用户社区,并且有大量深度网络模型在社区上贡献,被称为&Model Zoo&。其中,AlexNet和GoogleNet是最著名的两个。
  Caffe是视觉识别的流行框架,然而Caffe不提供像TensorFlow,CNTK或Theano一样细粒度的层结构。你必须编写底层代码来构建复杂的层结构。由于它的固有架构,Caffe对循环网络和语言模型的支持不力。
  Caffe2
  贾扬清和他的团队目前在Facebook致力于Caffe2的研发。号,Facebook基于BSD协议开源了Caffe2。Caffe2聚焦于模块化,在移动设备和大规模部署均表现出色。和TensorFlow一样,Caffe2页使用C++ Eigen以支持ARM架构。
  Caffe的模型可以通过脚本轻松转化成Caffe2模型。Caffe在设计上的倾向使得它特别适合视觉相关的问题,Caffe2沿袭了它对视觉问题的强大支持,同时还加入了RNN和LSTM以更好地支持自然语言处理,手写字识别和时间序列预测。
  可以预见在不远的将来Caffe2将会替代Caffe在深度学习社区的地位。
  Microsoft Cognitive Toolkit
  Microsoft Cognitive Toolkit(CNTK)设计的初衷是用于语音识别领域。CNTK支持RNN(循环神经网络)和CNN(卷积神经网络),因此他有能力胜任图像、手写字和语音识别问题。CNTK支持64位Linux和Windows系统,提供Python和C++语言接口,遵循MIT协议。
  CNTK与TensorFlow和Theano有着类似的设计理念&&把网络定义成向量操作的语义图,向量操作例如矩阵加法、矩阵乘法以及卷积。同时,CNTK也提供细粒度的网络层设计,允许用户使用它们设计新的复杂网络。
  和Caffe一样,CNTK底层也是C++实现并具有跨平台CPU/GPU支持。搭载在Azure GPU Lab上,CNTK能发挥出最高的分布式计算性能。目前,CNTK由于不支持ARM架构,限制了其在移动端的应用。
  MXNet源自于卡内基梅隆大学和华盛顿大学。MXNet是一个极具特色,可编程,可扩展的深度学习框架。MXNet可以混合多种语言的模型和代码,包括Python, C++, R, Scala, Julia, Matlab, JavaScript。号,MXNet被纳为Apache基金会孵化项目。
  MXNet支持CNN、RNN、LSTM, 提供对图像,手写字,语音识别,预测和自然语言问题的强大支持。有人认为,MXNet是世界上最好的图像分类器。
  MXNet具有出色的可扩展性,例如GPU并行计算,存储映像,高速开发和可移植性。另外,MXNet可以和Apache
YARN结合,YARN是一个通用分布式应用管理框架,这一特性使得MXNet成为TensorFlow的竞争者。
  MXNet的一个独特之处是它是少有的几个支持对抗生成网络(GAN)的框架之一。这个模型被用于实验经济学方法中的&纳什均衡&。
  另一个特殊之处是,亚马逊的CTO Werner Vogels宣布了对MXNet的支持:&今天,我们宣布MXNet将成为亚马逊的深度学习框架选择。我们将在现有和未来将出现的服务中使用MXNet。&苹果公司的部分传闻也表示该公司将会使用MXNet作为其深度学习框架。
  Torch由Facebook的Royan Collobert、Soumith Chintala、曾任于Twitter现任于Nvidia的Clement Farabet和Google Deep Mind 的Koray Kavukcuoglu共同开发。其主要贡献者是Facebook、Twitter和Nvidia。 Torch遵守BSD 3 clause 开源协议。然而,Facebook近期宣布将转向Caffe2作为其首选深度学习框架因为它支持移动设备开发。
  Torch由Lua语言实现,Lua是一种小众语言,因此若你不熟悉这门语言,会影响到整个工作的效率。
  Torch缺少像TensorFlow、MXNet on YARN和Deeplearning4J那样的的分布式支持,缺少多种语言接口同样限制了它的受众。
  DeepLearning4J
  DeepLearning4J(DL4J)是基于Apache 2.0协议的分布式开源神经网络类库,它由Java和Scala实现。DL4J是SkyMind的Adam Gibson开发的,它是唯一的商品级深度学习网络,可以和Hadoop、Spark结合构建多用户多线程服务。DL4J是唯一使用Map-Reduce训练网络而使用其他类库进行大规模矩阵操作的框架。
  DL4J拥有内建的GPU支持,这一重要特性能够支持YARN上的训练过程。DL4J拥有丰富的深度神经网络架构支持,包括RBM,DBN,CNN,RNN,RNTN和LSTM。DL4J还支持一个向量计算库&&Canova。
  由于是由Java实现,DL4J先天比Python块,它使用多GPU执行图像识别任务和Caffe一样快。该框架可以出色完成图像识别,欺诈检测和自然语言处理任务。
  Theano
  Theano主要由蒙特利尔大学学习算法研究所(MILA)创立。Yoshua Bengio是Theano的开创者,同时领导这个实验室,该实验室在深度学习研究领域做出巨大的贡献,培养出约100名相关学生和从业者。Theano支持高效机器学习算法的快速开发,遵守BSD开源协议。
  Theano不像TensorFlow那样优雅,但它提供了支持循环控制(被称为scan)的API,可以轻松实现RNN。
  Theano提供多种支持手写字识别、图像分类(包括医学图像)的卷积模型。Theano还提供三维卷积和池化用于视频分类。在语言方面,Theano能胜任例如理解、翻译和生成等自然语言处理任务。Theano还支持生成对抗网络(GAN),GAN即是由MILA的一位学生提出的。
  Theano支持多GPU并行计算并且自带分布式框架。Theano只支持一种开发语言,比TensorFlow速度快很多,是一种学术研究的有力工具。然而,其不支持移动平台以及没有多种语言接口的缺陷限制了它在企业的广泛应用。
  开源与专利软件之争
  随着深度学习逐渐成熟,可以预知到我们将见证TensorFlow,Caffe2和MXNet的竞赛。同时,软件供应商也在提供先进的AI产品使你从数据中获取更多价值。问题是:你会购买带有专利的AI产品还是使用开源框架。如果使用开源框架,你将会面临哪种框架最适合你的问题的选择困难。而选择专利软件,你又将怎样制定退出策略?任何一种选择都需要长远考虑。
  来源:CSDN
相关新闻 & & &
& (09月28日)
& (04月05日)
& (10月10日)
& (08月22日)
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款Windows 上 Caffe开发环境搭建
Caffe是目前非常流行的深度学习框架,使用C++/CUDA编写,使用方便,性能优异,适合线上环境部署。
原生Caffe是在Linux下编译部署的。对于初学者而言,大量依赖包需要花非常大代价才能编译成功,让人望而生畏。况且在Linux下阅读代码是一件非常头疼或蛋疼的事情。
为此,研究在W
Caffe是目前非常流行的深度学习框架,使用C++/CUDA编写,使用方便,性能优异,适合线上环境部署。
原生Caffe是在Linux下编译部署的。对于初学者而言,大量依赖包需要花非常大代价才能编译成功,让人望而生畏。况且在Linux下阅读代码是一件非常头疼或蛋疼的事情。
为此,研究在Windows下搭建Caffe开发环境是利国利民的好事。微软不负众望在Github上开源了Microsoft版Caffe,链接:
只有代码还不够,需要准备一台机器。
如果手头没有机器而且也不想攒机,可以考虑买一台阿里云HPC(购买链接:),配备双 Tesla K40m 或 双 Tesla M40,专为深度学习定制机型。
购买后默认操作系统是Cent OS 7,通过提交工单可以重置为Windows 系统。为了完成本文实验,推荐重置为 Windows Server bit版。
编译环境:Visual Studio 2013 Ultimate版, 获取地址:
CUDA Toolkit版本:7.5,获取地址:
CUDNN版本:4.0, 获取地址:
依次安装GPU驱动、Visual Studio 2013、CUDA Toolkit。将Microsoft/caffe代码下载到本地磁盘,本文路径为C:\Users\Administrator\Desktop\caffe-master。
将CUDNN解压到C:\Users\Administrator\Desktop\cuda。准备工作完毕。
进入C:\Users\Administrator\Desktop\caffe-master\windows目录,将文件CommonSettings.props.example
重命名为CommonSettings.props,修改其内容如下:
本文为云栖社区原创内容,未经允许不得转载,如需转载请发送邮件至yqeditor@list.;如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:yqgroup@ 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
用云栖社区APP,舒服~
【云栖快讯】哪个编程语言最热门?各个专业领域的技术趋势是什么?如何才能更快速的踏上技术进阶之路……云栖社区2017中国开发者大调查火热进行!答卷可抽奖,红轴机械键盘、天猫精灵,丰富好礼大概率抽取&&
博主,全文呢?
可以关注新书《深度学习:21天实战 Caffe》
阿里云机器学习是基于阿里云分布式计算引擎的一款机器学习算法平台。用户通过拖拉拽的方式可视化的操作组件来进行试验,...
阿里云专门为物联网领域的开发人员推出的,其目的是帮助开发者搭建安全性能强大的数据通道,方便终端(如传感器、执行器...
阿里云依据网站不同的发展阶段,提供更合适的架构方案,有效降低网站的开发运维难度和整体IT成本,并保障网站的安全性...
为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效率,降低 IT 成本...
安全技术百问
Loading...}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信