亚马逊双币信用卡办理过程
由于我选择亚马逊专业销售计划,根据要求,每月需要扣除39.9美元的店铺租金,必须要办理一张双币信用卡,以便交纳租金。虽然这有些不符合国内的习惯,可是也没办法,只能按要求来操作。 首先,了解一下什么是双币信用卡: 所谓“双币信用卡”,其实指的就是具备两类货币结算账户的信用卡,像国内很多银行就有发行具有人民币和美元结算功能的双币信用卡。 双币信用卡因为拥有两个货币结算账户,所以客户在持卡消费时,可以用两种货币进行交易。比如人民币/美元双币信用卡,就既可以进行人民币交易,也可以进行美元交易。 这样说来,双币信用卡很多银行都可以办理,只要选择一家办理即可...
SpringBoot中如何优雅的使用多线程
在 SpringBoot 应用中,经常会遇到在一个接口中,同时做事情1,事情2,事情3,如果同步执行的话,则本次接口时间取决于事情1 2 3执行时间之和;如果三件事同时执行,则本次接口时间取决于事情1 2 3执行时间最长的那个,合理使用多线程,可以大大缩短接口时间。那么在 SpringBoot 应用中如何优雅的使用多线程呢?Don't bb, show me code.快速使用SpringBoot应用中需要添加@EnableAsync注解,来开启异步调用,一般还会配置一个线程池,异步的方法交给特定的线程池完成,如下:@Configuration @EnableAsync public clas...
springcloud实践二:gateway网关详解
微服务框架当前大行其道,网关在微服务架构中是一个非常重要的部分,网关一般作为项目的统一请求入口提供给前端开发人员,前端开发人员不用知道每个微服务的请求地址。网关可以统一对所有请求做过滤、限流、负载均衡、监控等处理,而不必在每个微服务项目重复处理请求。网关配合注册中心也可以很好的实现微服务的动态扩容,只需要在网关将请求路由转发到注册中心的微服务上即可,由注册中心进行负载均衡处理。Spring Cloud Gateway旨在提供一种简单而有效的方法来路由到api,并为它们提供额外功能,例如:安全性、监控和弹性控制。Spring Cloud Gateway基于Spring Boot 2.x, Spr...
低带宽环境下的物联网传输协议——MQTT
MQTT是什么MQTT由IBM公司开发,是一个即时通讯协议,也是一个物联网传输协议,主要用于轻量级的订阅/发布式的消息传输。其设计目的主要是为低带宽和不稳定网络环境下的物联网设备提供服务。MQTT中的概念订阅(Subscribtion): 订阅包含主题筛选器(Topic Filter)和最大服务质量(QoS)。订阅会与一个会话(Session)关联。一个会话可以包含多个订阅。每一个会话中的每个订阅都有一个不同的主题筛选器会话(Session): 每个客户端与服务器建立连接后就是一个会话,客户端和服务器之间有状态交互。会话存在于一个网络之间,也可能在客户端和服务器之间跨越多个连续的网络连接。主题...
实践:把Springboot项目配置迁移至 Apollo 配置管理中心
导读:由于配置日益增多不方便管理且期望配置修改实时生效,因此笔者决定部署一个配置中心,经过分析对比之后决定采用携程开源的 Apollo 配置管理中心。本文分享笔者基于 Apollo 提供 quick start 搭建服务端,并将一个多环境配置的 Springboot 项目迁移至 Apollo 的实践,希望对各位熟悉 Apollo 有所帮助。本地部署 Apollo为了方便用户体验,其官方文档提供了一个 quick start 部署 Apollo 的方案。具体部署可参考官方文档。其主要步骤如下:创建 ApolloPortalDB创建 ApolloConfigDB修改 demo.sh 数据库信息启动...
如何搭建WebRTC信令服务器
1.WebRTC后台服务:通话的房间服务器(Room Server)房间服务器是用来创建和管理通话会话的状态维护,是双方通话还是多方通话,加入与离开房间等等,我们暂时沿用Google部署在GAE平台上的AppRTC这个房间服务器实现,该GAE App的源码可以在github.com上获取.该实现是一个基于Python的GAE应用,我们需要下载Google GAE的离线开发包到我们自己的Linux服务器上来运行该项目,搭建大陆互联网环境下的房间服务器.通话的信令服务器(Signaling Server)信令服务器是用来管理和协助通话终端建立去中心的点对点通话的一个角色。这个角色要负责一下任务:1...
BPM引擎Activiti6.0任务撤回实现方法
当前使用的BPM引擎为Activiti6.0,客户需求是流程发起人能将整个流程撤销,对于某个流程节点,办理人可以撤回已经办理的任务,同时前提是该任务节点的下个节点未被办理。1、流程撤销首先说下发起人对整个流程的撤销,直接删除流程,传入流程实例ID,结束一个流程。执行此方法后,流程实例的当前任务act_ru_task会被删除,流程历史act_hi_taskinst不会被删除,并且流程历史的状态置为finished完成。runtimeService.deleteProcessInstance(instanceId, deleteReason);2、任务撤回已执行任务的撤回操作相对来说复杂些,这里先...
SpringBoot数据源配置原理
在数据库访问过程中,“数据源”无疑是最重要的概念之一,它不仅可以对与数据库访问相关的各种参数进行封装和统一管理,还可以管理数据库连接池,提高数据库连接性能。目前,在市面上有很多优秀的开源数据源,例如DBCP、C3P0、Druid、HikariCP等等。在SpringBoot2.x中,则采用目前性能最佳的HikariCP作为其默认数据源。接下来,我们就来具体介绍下SpringBoot的默认数据源配置及其原理。DataSourceAutoConfiguration我们知道,SpringBoot中几乎所有的默认配置都是通过配置类XxxAutoConfiguration进行配置的,SpringBoot...
SpringBoot的核心注解
前言springboot的核心就是注解。springboot通过各种组合注解,极大地简化了spring项目的搭建和开发。在springboot中有一些注解是其中的关键,必须掌握。@Configuration@Configuration并不是一个新的注解,在Spring3.0时已经存在了。@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法,这些方法将会被AnnotationConfigApplicationContext或AnnotationConfigWebApplicationContext类进行扫描,并用于构建bean定义...
Spring Security 两种资源放行策略,千万别用错了
事情的起因是这样,有小伙伴在微信上问了一个问题:就是他使用 Spring Security 做用户登录,等成功后,结果无法获取到登录用户信息,松哥之前写过相关的文章(奇怪,Spring Security 登录成功后总是获取不到登录用户信息?),但是他似乎没有看懂。考虑到这是一个非常常见的问题,因此我想今天换个角度再来和大伙聊一聊这个话题。Spring Security 中,到底该怎么样给资源额外放行?1.两种思路在 Spring Security 中,有一个资源,如果你希望用户不用登录就能访问,那么一般来说,你有两种配置策略:第一种就是在 configure(WebSecurity web) ...