精华内容
下载资源
问答
  • 在今天的展示中,我将展示 OSS 版本 Basic 及以上版本安装在界面上的区别。OSS 版本目前被一些提供 Elastic Stack 云服务的厂商,比如 Amazon 所使用。对于大多数的开发者来说,我们可能一辈子不会去使用它。你...

    对于很多开发者来说,可能你还从来没有安装过 Elastic Stack 的开源版本,因为我们习惯会安装 Basic 版本及以上的发布。在今天的展示中,我将展示 OSS 版本 和 Basic 及以上版本安装在界面上的区别。OSS 版本目前被一些提供 Elastic Stack 云服务的厂商,比如 Amazon 所使用。对于大多数的开发者来说,我们可能一辈子不会去使用它。你可以在 Elastic 的官方网站查看到各个版本的区别 https://www.elastic.co/cn/subscriptions

    在今天的展示中,我将使用 Elastic Stack 7.10 来进行展示。

     

    安装

    Elasticsearch OSS  版本安装

    我们可以直接到地址 https://www.elastic.co/downloads/ 下载:

    在上面根据我们的平台来进行选择,并分别进行安装。安装的步骤也非常直接。可以参考之前的文章  “如何在 Linux,MacOS 及 Windows 上进行安装 Elasticsearch”

     

    Kibana OSS 版本安装

    我们仿照同样的办法,进入到下载页面:

    依据自己的平台进行下载,并安装。安装的步骤可参考之前的文章 “如何在 Linux,MacOS 及 Windows 上安装 Elastic 栈中的 Kibana”。

     

    安装后的 Kibana 界面比较

    对于绝对多数的开发者来说,可能你一辈子都不会来安装这个 OSS 版本。我们接下来做一个简单的 Kibana 界面上的比较:

    OSS 版本

    是不是和标准版相比较,少了很多东西呢?

    Basic 版及以上版本

     

    从上面的图中我们可以看出来 Elastic 的 Basic 版本及以上版本是不是多了很多的功能啊?当然这个只是界面上的比较。有很多实际的功能在页面上是看不到。

    如果你想了解更多关于 OSS 版本和其它版本之间的区别,请参阅我我们的官方文档 https://www.elastic.co/cn/subscriptions

    展开全文
  • 1、示教器界面的区别:6.0及以上系统的示教器界面如下: 6.0以前系统的示教器界面如下: 2、通讯配置选型界面不同,IO设置流程有区别,省去了Unit: 6.0及以上系统的界面: 6.0以前系统的界面如下: ...

    1、示教器界面的区别:6.0及以上系统的示教器界面如下:

    6.0以前系统的示教器界面如下:

    2、通讯配置选型界面不同,IO设置流程有区别,省去了Unit:

    6.0及以上系统的界面:

    6.0以前系统的界面如下:

    后边再具体讲IO的前后配置。

    3、几个高级的重启方式的不同:

    6.0及以上系统的高级重启界面:

    6.0以前系统的示教器高级重启界面如下:

    展开全文
  • 关于APISDK的个人理解两者区别

    万次阅读 多人点赞 2019-01-30 14:57:32
    关于APISDK的个人理解两者区别 最近接到公司的一项任务,调用第三方库的一些东西。 因此记录一下在使用第三方的功能模块时常常提及到的两个名词——APISDK。 1.SDK是什么? SDK: 概念:软件开发工具包(SDK,...

    关于API和SDK的个人理解及两者区别

    最近接到公司的一项任务,调用第三方库的一些东西。
    因此记录一下在使用第三方的功能模块时常常提及到的两个名词——API和SDK。

    1.SDK是什么?

    SDK:
    概念:软件开发工具包(SDK,全称:Software Development Kit)
    一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。

    通俗点是指由第三方服务商提供的实现软件产品某项功能的工具包。=

    就相当于很多API和其他文件的集合体,你可以用这个完成某一个事情。

    举例子:
    整个计算器产品可以看做是一个SDK,它里面有API集合(计算器),说明文档(说明书),以及一些其他文件。
    这个SDK的功能就是计算,可能要算什么不确定,但是你可以通过这个SDK中的某个方法完成,实现你的目的。

    比如百度AI平台的图像识别SDK:
    在这里插入图片描述

    2.API是什么?

    API:
    概念:API(Application Programming Interface,应用程序编程接口)
    一般是指一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

    其实就是别人已经写好的可以实现特定功能的函数,而你只需要根据他提供好的接口,也就是调用他的方法,传入他规定的参数,然后这个函数就会帮你实现这些功能。

    举例子:

    比如别人写好了一个数字求和的方法sum(int a, int b)。
    提供给你一个API接口——你只需要调用它这个sum()函数,然后传入这个a,b的值,然后就可以得到计算的结果,你不需要知道这个方法是怎么实现的,知道该怎么调用即可。

    如果别人又写了一个两数相乘的方法Mul(int a, int b),那这又称为另一个API。

    比如百度Ai平台的图像识别API:
    在这里插入图片描述

    3.SDK和API的区别

    两者区别:

    1.API是一个具体的函数,一个确定的功能,已经明确了它的作用(比如做加法)。
    
    2.SDK就像是很多方法的集合体,是一个工具包。
    
    比如你要做加法,你就调用计算机SDK的加法API,要做减法就调用减法API,无论你想完成什么计算,SDK里总有能实现的方法。
    
    3.SDK除了他提供的完善的接口,他还会给你提供相关的开发环境,而API需要的环境你得自己提供(比如传参)
    
    4.SDK相当于开发集成工具环境,API就是数据接口。在SDK环境下调用API数据。(而这个SDK你可以自己配置或者下载第三方提供的)
    

    到此结束,以上均属于个人理解。
    展开全文
  • 对于之前的文章:Fiddler对安卓App抓包(逍遥模拟器APP)但是,升级了 targetSdkVersion 到 28 后发现在 Android 7.0 以上机型 Charles 抓...

     

    对于之前的文章:Fiddler对安卓App抓包(逍遥模拟器APP)

    但是,升级了 targetSdkVersion 到 28 后发现在 Android 7.0 以上机型 Charles 抓取 https 包时显示找不到证书,但是 Android 6.0 机型还是可以正常抓包。原因是因为从 Android 7.0 开始,默认的网络安全性配置修改了

    解决方法如下:

    现象:android7.0以上的手机https抓包失败(安装了https证书也不行)

    原因:android7.0+的版本新增了证书验证(系统证书),具体如下:

    1、Android 6.0(API 23)及更低版本应用的默认网络安全性配置如下:

    <!-- 默认允许所有明文通信 -->
    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <!-- 信任系统预装 CA 证书 -->
            <certificates src="system" />
            <!-- 信任用户添加的 CA 证书,Charles 和 Fiddler 抓包工具安装的证书属于此类 -->
            <certificates src="user" />
        </trust-anchors>
    </base-config>
    

    2、而在 Android 7.0(API 24)到 Android 8.1(API 27)的默认网络安全性配置如下:

    <!-- 默认允许所有明文通信 -->
    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <!-- 信任系统预装 CA 证书 -->
            <certificates src="system" />
        </trust-anchors>
    </base-config>
    

    3、而在 Android 9.0(API 28)及更高版本的默认网络安全性配置如下:

    <!-- 默认禁止所有明文通信 -->
    <base-config cleartextTrafficPermitted="false">
        <trust-anchors>
            <!-- 信任系统预装 CA 证书 -->
            <certificates src="system" />
        </trust-anchors>
    </base-config>
    

    对比很容易发现,在 Android 7.0(API 24)到 Android 8.1(API 27),默认不再信任用户添加的 CA 证书,所以也就不再信任 Charles 和 Fiddler 抓包工具的证书,所以抓取 HTTPS 包时才会失败。而且在 Android 9.0(API 28)及更高版本上,不仅默认只系统预装的 CA 证书,还默认禁止所有明文通信(不允许 http 请求)。

    解决办法:

    前提:在手机端和电脑端都必须安装https的安全证书
    配置测试包时,项目设置默认信任所有证书(系统+用户,Charles 和 Fiddler)
    1. 在工程res-xml目录中创建一个名为 network_security_config.xml的文件,文件内容如下:

    <network-security-config>
        <base-config cleartextTrafficPermitted="true">
            <trust-anchors>
                <certificates src="system" overridePins="true" />
                <certificates src="user" overridePins="true" />
            </trust-anchors>
        </base-config>
    </network-security-config>
    

    2.在AndroidManifest里的标签中,添加如下代码,在清单文件中指向该文件:

    <?xml version="1.0" encoding="utf-8"?>
    <manifest ... >
    <application android:networkSecurityConfig="@xml/network_security_config"
    ... >
            ...
    </application>
    </manifest>
    
    
    

    重新打包项目,然后抓包,即可成功。

    webview抓包失败

    上面可以解决android原生抓包问题,但在android7.0以上的手机,开着网络代理访问不了webview,若要抓包webview,
    需要在webview的WebViewClient中,将一行代码给注释掉:

    super.onReceivedSslError(view, handler, error)
    

    这样是为了忽略掉SSL证书错误,因为开启代理后网络会变得不安全,证书会报错误,webview检测到证书错误之后就不请求任何数据。注释是为了忽略掉父类的处理,默认执行下去。

    警告

    这样的配置操作是敏感且危险的,只能用于测试环境方便抓包,线上包一定注意要恢复配置,不然APP会面临被他人抓包的风险。

    如何只在调试模式下允许抓包呢?

    使用<debug-overrides>即可实现只在android:debuggabletrue时才生效的配置:

    <?xml version="1.0" encoding="utf-8"?>
    
    
    <network-security-config>
        <!-- 支持 Android 7.0 以上调试时,信任 Charles 和 Fiddler 等用户信任的证书 -->
        <debug-overrides>
            <trust-anchors>
                <certificates src="system" />
                <certificates src="user" />
            </trust-anchors>
        </debug-overrides>
    </network-security-config>
    

    网上有些解决方式是将 Charles 和 Fiddler 的证书添加到raw文件夹下的方式也可以,但是繁琐了点。

    在 Android 9.0(API 28)以上允许部分 http 请求

    最佳的解决方式肯定是全部使用 https 请求,安全性更高,如果有些请求或测试环境下还是需要使用 http 请求,需要在网络安全性配置添加白名单:

    <?xml version="1.0" encoding="utf-8"?>
    
    
    <network-security-config>
        <!-- 支持 Android 9.0 以上使用部分域名时使用 http -->
        <domain-config cleartextTrafficPermitted="true">
            <domain includeSubdomains="true">sample.domain</domain>
        </domain-config>
        <!-- 支持 Android 7.0 以上调试时,信任 Charles 和 Fiddler 等用户信任的证书 -->
        <debug-overrides>
            <trust-anchors>
                <certificates src="system" />
                <certificates src="user" />
            </trust-anchors>
        </debug-overrides>
    </network-security-config>
    

    后记
    通过查找资料,还有一个方法,通过重载WebViewClient的onReceivedSslError()函数并在其中执行handler.proceed(),即可忽略SSL证书错误,继续加载页面,代码如下:

    WebView webview = (WebView) findViewById(R.id.webview);
    webview.setWebViewClient(new WebViewClient() {
    @Override
    public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
    // 不要调用super.onReceivedSslError,因为其包含了一条 handler.cancel(),第一次访问时无法加载,第二次以后可以加载
    // super.onReceivedSslError(view, handler, error);
    // 忽略SSL证书错误,继续加载页面
            handler.proceed();
        }
    }
    

    以上内容参考:流柯 和 JohnnyShieh 的博客

    文章合集

    Selenium | Appium  | Jenkins  |  Jmeter 

    软件测试方法汇总 Postman接口参数化 | 测试用例设计
     

    视频教程

    Selenium | Appium | Jenkins | Jmeter

    AWS与Docker

    如何使用AWS EC2+Docker+JMeter构建分布式负载测试基础架构
    Docker容器数据持久化和容器网桥连接
    Docker删除image和container
    Docker与VM虚拟机的区别以及Docker的特点

    展开全文
  • ddr5ddr4的区别 ddr5ddr4性能差别

    千次阅读 2021-02-26 14:00:20
    DDR5DDR4主要在带宽速度、单芯片密度以及工作频率等方面有区别。带宽速度上,DDR5为32GB/s,DDR4为25.6GB/s;; 组装电脑怎么搭配更好用 这些点很重要 看过你就懂了 http://www.adiannao.cn/du 单片芯片密度上,DDR5...
  • 12:01.357574+0800 OutdoorClub[31564:2724613] [AMapLocationKit] 要在iOS 11及以上版本使用定位服务, 需要在Info.plist中添加NSLocationAlwaysAndWhenInUseUsageDescriptionNSLocationWhenInUseUsageDescription...
  • 以前的很多电脑,基本都是只支持32位系统 ,32位系统不是内存越大越好,因为超过3G,它根本就不能识别,所以,当你的内存条加装到4G以上,其实都没什么用,那这系统想升级内存快起来,只能作梦。不过方法不是没有,...
  • matlab6.5版本matlab7版本以上区别

    千次阅读 2012-10-23 13:39:41
    matlab6.5版本matlab7版本以上区别: 1.matlab7编译器有很大改善 比如编译median(t);语句 ------------------------------------------------------------------------------------------
  • 互联网上老提到这2个名词:SEMSEO。 一、什么是SEO 从官方解释来看,seo=Search(搜索) Engine(引擎) Optimization(优化),三个单词的缩写,即搜索引擎优化。 是一种方式:利用搜索引擎的规则提高网站在...
  • 阿里巴巴 P8、P9 及以上到底是什么水平? 阿里高P技术之谜 阿里巴巴的科技创新力在所有的互联网公司中差不多一直都是领头羊的地位,使用的技术也一直都走在前沿。在行业内,很多互联网公司都将阿里作为自己的标杆...
  • V1: 旧的验证方式 V2: Android7.0以后新的验证方式 可以只勾选v1,但是在Android7.0以上不会应用新的签名方式。如果只勾选V2,Android7.0以下的机子将无法安装APK! 所以打包时最好同时勾选V1V2
  • Windows打开1010以上串口

    千次阅读 2014-03-03 16:24:11
    因为用的串口不是常规的COM1 - COM9而是COM1010以上的端口,想着是很简单的,增加几个选项就可以轻松搞定的,结果加上后测试,发现总是初始化失败,调试发现在CreateFile里总是失败,找到MSDN一看果然这里有区别。...
  • SOP 封装 SOIC 封装的区别,实际上仅有很小的区别,可以混用,还有其他一些封装的简介。
  • Android8.0以上版本差异性

    千次阅读 2018-01-31 11:45:21
    Android8.1与之前的差异 1、String.getBytes(“Unicode”)(针对Google手机8.1系统) 在版本8.1之前,返回的byte[] 是低位在前,高位在后,8.1后直接变成了高位在前,低位在后 解决办法: ...
  • hibernate 3.6.10.Final hibernate 4.3.8.Final 的区别
  • 在开发APP过程中,发现Android 6.0版本的百度定位无法使用,查阅资料后发现android 6.0及以上系统 权限管理变了,定位属于隐私权限,需要在运行时手动申请 关于Android5.0Android6.0在权限方面的区别:Android5.0...
  • 经常有人认为LED网格屏格栅屏是同一种产品,其实不是,两者之间差别很大。今天联曼光电小编带大家认识这两种产品差别: 什么是LED格栅屏? LED格栅屏是一种以灯条组成格栅状的LED显示屏,因其形态是镂空式,因此也...
  • NginxApacheTomcat的区别及优缺点

    万次阅读 多人点赞 2019-03-11 21:47:04
    NginxApacheTomcat的区别及优缺点 1、定义: 1)Apache Apache HTTP服务器是一个模块化的服务器,可以运行在几乎所有广泛使用的计算机平台上。其属于应用服务器。Apache支持支持模块多,性能稳定,Apache本身...
  • public classclass的区别

    万次阅读 多人点赞 2019-03-21 21:38:50
    在编写类的时候可以使用两种方式定义类:public class定义类class定义类,那么这这两种方式有什么区别吗?如果一个类声明的时候使用了public class进行了声明,则类名称必须与文件名称完全一致,如果类的声明使用...
  • visual studio与visual c++ 6.0的区别

    万次阅读 2015-08-19 11:23:27
    Visual Studio支持多种语言,Visual C++ 6.0 只支持CC++ Visual C++ 6.0 是Visual Studio 6.0的一个组成部分,Visual Studio 6.0中还包括Visual Basic 6.0、Visual Foxpro 6.0Visual J++ 6.0。 之后的...
  • URIURL的区别比较与理解

    万次阅读 多人点赞 2018-06-04 10:12:03
     三、URIURL之间的区别 从上面的例子来看,你可能觉得URIURL可能是相同的概念,其实并不是,URIURL都定义了资源是什么,但URL还定义了该如何访问资源。URL是一种具体的URI,它是URI的一个子集,它不仅唯一...
  • android gradle 4.1以上依赖的改变:compile->apiimplementation 地址:http://www.jianshu.com/p/d372cc6802e5提前准备升级到gradle插件(gradle-tools)3.0.0: 需要gradle版本升级到4.1以上。 android studio...
  • MyeclipseEclipse的区别

    千次阅读 2016-12-30 20:19:29
    MyeclipseEclipse的区别 1.Eclipse是开源的。Myeclipse是收费的。 2.Myeclipse的核心是Eclipse。只不过Myeclipse在此基础上增加了很多插件,使用起来更加方便。 3.Myeclipse比Eclipse更加消耗资源。 PS:...
  • 下面简单说明下这几个版本间的区别。   android-support-v4 ——2011年4月份推出   compile "com.android.support:support-v4  是谷歌推出最低兼容到1.6版本系统的包。eclipse新建工程时,都...
  • cmd,batdos的区别

    千次阅读 2018-12-06 00:35:51
    区别 dos是磁盘操作系统(Disk Operating System),是个人计算机上的一类操作系统。 bat是DOS命令,在任何dos环境下都可以使用。 bat文件是dos下的批处理文件,批处理文件是无格式的文本文件,它包含一条或多条命令,...
  • Android7以上抓包HTTPS

    千次阅读 热门讨论 2019-11-23 16:58:09
    目录前言准备阶段证书转换遇到问题...后来才发现原来Android9版本不信任用户的证书(在Android7以上都是)。 所以为了解决该问题 1、用Android6以下版本的手机抓包 。 2、把证书安装到系统里(需要ROOT)。 准备...
  • jdk1.7jdk1.8大区别

    千次阅读 2019-07-07 21:46:37
    区别 在jdk1.8中取消了永久代,取而代之的是Metaspace,这个空间不占用jvm虚拟机的内存,而是占用物理机的内存 如果我们new的小对象,会进去新生代,二如果new的大对象的话,不会进入新生代而是直接进入老年代 jdk...
  • freertosucos的区别

    万次阅读 2018-03-29 17:23:11
    内核ROM耗费RAM都比uCOS 小,特别是RAM。 这在单片机里面是稀缺资源,uCOS至少要5K以上, 而freeOS用2~3K也可以跑的很好。 2。freeRTOS 可以用协程(Co-routine),减少RAM消耗(共用STACK)。uCOS只能用任务...
  • VC中如何打开Com10及以上的串口

    千次阅读 2015-09-09 15:00:22
    因为用的串口不是常规的COM1、COM2而是大于Com10的端口,想着是很简单的增加几个选项就可以轻松搞定的,结果加上后测试,发现总是初始化失败,调试发现在CreateFile里总是失败,找到MSDN一看果然这里有区别。...
  • Qaac tvbrQaac cvbr的区别就体现在低潮的水平上 。Qaac cvbr的低潮表现更好一点(红点更少), 当然这是多用了10 kbps的码率换来的 ,两者高潮部分一个红点不差,真的是一个红点也不差。 Qaac 在256k的表现 胜过...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 939,707
精华内容 375,882
关键字:

及以上和以上的区别