2020年11月3日星期二

Centos7中MySQL8.0安装过程及遇到的问题记录

记录在centos7 中安装MySQL过程

本文主要参考以下2篇文章,安装操作

https://www.miboxapp.com/article/detail/1146659339214393344

https://blog.csdn.net/weixin_42266606/article/details/80879571

 

1、下载MySQL安装包:下载地址:https://dev.mysql.com/downloads/mysql/

Select Operating System: 选择 Red Hat ,CentOS 是基于红帽的,Select OS Version: 选择 linux 7

 

2、选择 RPM Bundle 点击 Download,下载时需要登录Oracle账号

 

3、下载好后的安装包

 

4、登录linux服务器,具体过程就不写了,我用的是Xshell.

 

5、通过 rpm -qa | grep mariadb 命令查看 mariadb 的安装包(centos7默认安装了mariadb,需要卸载掉)

 

6、通过 rpm -e mariadb-libs-5.5.65-2.el7.x86_64 --nodeps 命令装卸 mariadb

 

7、通过 rpm -qa | grep mariadb 命令再次查看 mariadb 的安装包

 

8、通过 cd /usr/local/ 命令进入根目录下的usr目录下的local目录,这个目录是放一些本地的共享资源的

 

(截图非本机,自己操作时忘截图了)

9、通过 ll 命令查看一下当前目录下的目录结构

 

(截图非本机)

10、通过 mkdir mysql 命令 在当前目录下创建一个名为 mysql 的目录

 

(截图非本机)

11、通过 ll 命令查看一下当前目录下的目录结构,刚创建的 mysql 目录有了

 

(截图非本机)

12、通过 cd mysql 命令进入 mysql 目录

 

(截图非本机)

13、通过FTP工具将MySQL的安装包上传到该目录(图中使用的是WinSCP)

 

14、在Xshell中通过 ll 命令查看一下当前目录下的目录结构

 

(截图非本机)

15、通过 tar -xvf mysql-8.0.21-1.el7.x86_64.rpm-bundle.tar  命令解压 tar 包

 

(截图非本机,截图中的是mysql8.0.11)

16、通过 rpm -ivh mysql-community-common-8.0.21-1.el7.x86_64.rpm --nodeps --force 命令安装 common

 

(截图非本机)

17、如上按顺序安装以下安装包

通过 rpm -ivh mysql-community-libs-8.0.21-1.el7.x86_64.rpm --nodeps --force 命令安装 libs

通过 rpm -ivh mysql-community-client-8.0.21-1.el7.x86_64.rpm --nodeps --force 命令安装 client

通过 rpm -ivh mysql-community-server-8.0.21-1.el7.x86_64.rpm --nodeps --force 命令安装 server

 

18、通过 rpm -qa | grep mysql 命令查看 mysql 的安装包

 

19、通过以下命令,完成对 mysql 数据库的初始化和相关配置

(此处有个坑,下面第28步 mysql8.0设置不区分大小,必须在数据库初始化时操作)

mysqld --initialize;

chown mysql:mysql /var/lib/mysql -R;

systemctl start mysqld.service;

systemctl enable mysqld;

——————

运行命令:mysqld --initialize; 报错

 

解决措施

安装libaio

运行命令:yum install -y libaio

安装后再初始化mysql就可以了

——————

 

20、通过 cat /var/log/mysqld.log | grep password 命令查看数据库的密码

 

21、通过 mysql -uroot -p 敲回车键进入数据库登陆界面

(复制密码即可,另外密码输入后也不会显示)

 

(截图非本机)

22、通过 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456'; 命令来修改密码

 

(截图非本机)

23、通过 exit; 命令退出 MySQL,然后通过新密码再次登陆

 

24、创建用户

一般不会使用root登录,需创建一个新的用户来使用mysql数据库;

创建用户命令

create user 'test'@'%' identified with mysql_native_password by '123456';

命令中的test为用户名,123456为登录密码

 

(截图非本机)

25、授权远程登录

创建用户后需设置允许远程访问才可在外网链接MySQL数据库

需分别执行以下命令:

grant all privileges on *.* to 'test'@'%' with grant option;

flush privileges;

26、执行成功后需开启3306端口,MySQL默认端口为3306,开启端口命令,需先退出MySQL

exit

firewall-cmd --zone=public --add-port=3306/tcp --permanent

systemctl restart firewalld.service

27、开启成功后,用MySQL数据库的客户端远程链接测试

 

28、设置数据库不区分大小写和字符集

执行如下命令

Vi /etc/my.cnf  进入配置文件

进入编辑模式后在最后加入

lower_case_table_names=1

default-character-set=utf8mb4

退出并保存(按ESC+:wq 保存退出),修改完成后需重启MySQL

Systemctl restart mysqld

 

我执行以上命令后报错,把配置文件最后2行注释后又可正常运行,问题还未解决

 

—报错问题跟踪—

 

关于字符集问题,status命令,看到mysql字符集已经是"utf8mb4"

 

 

查看mysql日志 vi /var/log/mysqld.log

提示"unknown variable 'default-character-set=utf8mb4'"

查询处理方法如下

①是在MySQL的配置/etc/my.cnf中将default-character-set=utf8mb4 修改为 character-set-server = utf8mb4,但是这需要重启MySQL服务,如果你的MySQL服务正在忙,那这样的代价会比较大。

 

②是用mysqlbinlog --no-defaults mysql-bin.000001 命令执行

 

考虑到已经查询到mysql的字符集是utf8mb4,所以我没去调整

 

关于大小写问题,查询发现mysql8.0需要在初始化时配置lower_case_table_names=1

否则会报错。

https://blog.csdn.net/qq_24432795/article/details/103135455

 

 

https://www.cnblogs.com/LoveShare/p/11666296.html

https://blog.csdn.net/weixin_42954381/article/details/100523640

我参照上述文档,删除mysql数据文件,重新设置

命令如下

service mysqld stop   //停止mysql服务

rm -rf /var/lib/mysql    //删除mysql文件夹所有数据

service mysql start   //重启mysql服务

 

重启mysql时报错,

 

 

所以重新初始化一遍数据库存

命令如下

mysqld --initialize;

chown mysql:mysql /var/lib/mysql -R;

systemctl start mysqld.service;

systemctl enable mysqld;

 

然后账号等相关设置重新操作一遍

 

mysql中通过查询命令"show variables like '%lower_case%'" 大小写设置

 

博客原文:https://www.jzlnice.com/article/detail/1297056055938912256

原文转载:http://www.shaoqun.com/a/488026.html

002315焦点科技:https://www.ikjzd.com/w/1831

邮乐网:https://www.ikjzd.com/w/1776

ad公司:https://www.ikjzd.com/w/1332


记录在centos7中安装MySQL过程本文主要参考以下2篇文章,安装操作https://www.miboxapp.com/article/detail/1146659339214393344https://blog.csdn.net/weixin_42266606/article/details/808795711、下载MySQL安装包:下载地址:https://dev.mysql.com/do
网上1号店:https://www.ikjzd.com/w/2263
easel:https://www.ikjzd.com/w/1721
广州清明节有哪些公墓可以祭拜?:http://tour.shaoqun.com/a/3122.html
深圳东山珍珠岛有什么旅游路线推荐吗?:http://tour.shaoqun.com/a/615.html
广州莲花山什么时候去最好?6月份去广州莲花山怎么样?:http://tour.shaoqun.com/a/2401.html

上线两月内斩获百万美金大单!教你一个轻松拓客的亚马逊致富商机

上线两月内斩获百万美金大单!教你一个轻松拓客的亚马逊致富商机

凭借亚马逊品牌好声誉和专业服务,众多全球500强企业,教育、政府和医疗机构等也在亚马逊上搜索并采购产品,作为跨境商采的先行者,亚马逊企业购(Amazon Business)帮助中国卖家直达海外终端优质企业买家及机构,完善的物流和企业端专属运营工具轻松斩获在线商采订单。亚马逊企业购全球年销售额已超过100亿美元,且持续保持高速增长,其中第三方卖家销售额占比超过50%1。 

今天小编就请来了5位来自工业品、医疗健康、商用家具、电子科技行业、酒店餐厨的优秀卖家,分享他们跟随商采客户一起向线上跨境 "数字化"转型,轻松赢单拓客的故事。快来一起看看吧!






必须值得!用同一卖家账户拓展更多优质商采客户!大品牌获取卖家信任,可以抛开繁复的经销网络,直击成熟海外市场,触达优质终端客群;还能轻松获取宝贵数据资源,获取最新市场行情,从0到1转型无压力!

王淳庆

抛去中间商,直达优质终端企业客户;获取最新市场行情,从0到1顺利转型无压力!

抛开繁复经销网络,直接触达优质个人和企业端客群。传统的行业销售方式首先必须花大量时间开发经销商资源,布建经销商体系,当面对海外市场时,这个过程更长更繁琐。但如果把生意放在线上,只要挑对了合作伙伴, 比如亚马逊企业购,就可以直达企业和机构等优质终端客群。这一点toB和toC是一样的,通过亚马逊企业购"飞越万水千山",抛开经销商网络,不仅能快速把自己的产品推送到消费客群面前,还节省了市场营销成本、运营成本,以及最重要的时间成本。

直取权威数据宝贵资源,洞察市场行情,从0到1快速转型。传统制造业行业切入一个新区域市场,要摸着石头过河,从价格、市场偏好、市场资源、到竞品分布、份额划分等都要从零摸索了解。但通过亚马逊企业购这样的商采跨境合作伙伴,可以快速取得这些数据,确定你的产品定在什么价格区间是最合适的,什么产品是你下一步需要投入资源全力研发和开发的。这种数据的获取对中国传统制造业跨入一个新市场是非常珍贵的资源。

林振梅

与国际大品牌同台竞争,穿透传统模式难以开拓的海外优质商采市场!

我们正在亚马逊企业购耕耘的日本市场是传统外贸最难攻克的海外商采市场。日本客户具有明显的排外性,令人望而却步。然而通过亚马逊企业购,我们得以与国际大牌及日本本土品牌站在了同一条起跑线上竞争。

杜涵

大品牌背书,专业高端工具助力,轻松获取线上消费信任。

传统的B2B靠人和人、一对一、点对点的沟通和交流,市场拓展的速率难以提高。但放到线上,如何解决信任问题便成为重中之重,这其中就包括了支付信任和消费信任。亚马逊企业购卖家后台的多种工具支持,便彰显出其中的优势。亚马逊企业购为买家提供多元支付方式,已经帮我们解决与商采客户间的基本支付信任问题。借助亚马逊企业购的品牌背书,以及亚马逊企业购不断为企业提供更多精细化运营的帮助,企业也在不断提高打磨的运营能力和产品品质,以此来消除线上消费信任的问题。

罗慧平

传统线下触达不到的优质客群是亚马逊企业购的致命吸引力。

亚马逊企业购的活跃买家数量和企业买家品质,是以前我们在传统渠道根本不可能接触到的。这是亚马逊企业购的跨境商采对我们最大的吸引力。海外知名企业、政府机构的订单,之前都属于合约市场,处于半垄断的状态,但通过亚马逊企业购,生产商可以直接面对这类客户,把产品展示给他们,获取这一类高质量客户的订单。

物流机制完善且安心,大件商品运输也不惧。大件商品的物流是我们这个品类遇到的一大痛点。有高需求、高活跃度的商采订单在线上,希望能高效切入进来,亚马逊企业购协助我们解决了物流配送、发货甚至售后服务的各种问题。

先促成线上小单交易,与客户建立信任是持续斩获商采大单的重要一环;采取有效的流量运营技巧,可以成功提高转化率和企业复购率。快来学习以下卖家的运营技巧和客服理念,快速建立企业和机构信任,精准获取优质商采客户芳心!

杜涵

刚上线就拿到了亚马逊choice的标志,迅速排到类目的前五名!线上高流量是机遇也是挑战,三步做好锁定流量转化高!

流量是我们最为关注的,但是否以流量为先,还是先走好这三步,否则你是可以快速获取很多客户,你也可以快速得罪很多客户。

可以把迎接线上企业客户的准备工作分为3步骤:第一是客户服务,建立一套SOP,以确定对客户的服务是否到位,比如是否每一个评价都用心回复,服务响应率用具体时间来衡量,比如是否能在两小时内。第二是运营,在线上,图文能力、视频水平就是获取客户的武器,必须打磨出最高端的武器去战斗。比如亚马逊多种专业工具可以帮助我们优化运营工序。第三步才是流量引入, SOP做好,运营武器准备好,然后再启动快速引流。康铂在2019年12月份上线亚马逊企业购,而之前已经用了六个月打磨图文和服务体系,但磨刀不误砍柴工,刚上线就拿到了亚马逊choice的标志,迅速排到了类目的前五名。

王淳庆

对于像工业品这样的品类,做好线上交流的两件事,获取客户信任,收取长久回购订单!

兰浪的经验是,在商采领域一旦获得客户信任就可以建立长期的合作关系,获得长久的回购。而要在不见面的线上交流中获得企业及机构买家的信任,至少要做好2件事:一是在商品页面呈现完善的资质认证文件,认证和资质文件准备可能要花费半年甚至更长的时间,并且有一定的前期投入,但是在跨境商采必不可少:呈现在网页上的详尽资质文件,代替了传统营销面对面的讲解交流介绍,可以快速获得客户对产品认可。同时对企业及机构买家而言,长期回购通常意味着需要把你加入它的安全采购名单,技术资料、生产资质保证书等文件的提供是必不可少的步骤,提前准备好意味着机会来临时能及时响应。二是服务支持,相比C端,B端商品需要更多的技术性服务。在售前,亚马逊企业购上反馈的每个小问题、每封电邮,都应该有专业技术人员做在线服务支持。兰浪的产品技术经理亲自为客户服务,了解客户目前使用的产品、计划使用的场合,给出最合适的建议。产品售出之后,技术经理也会继续追踪,了解客户的使用体验,作出改进建议。

罗慧平

企业购的卖家服务帮我们迅速完成传统中间商的角色补位,实现线上模式高效运转!

从事传统外贸行业的小伙伴其实不必对跨境电商心存恐惧,因为在线下积累的各种技能都可以变换方式在线上应用。在亚马逊企业购,我们最大的两项收获是:一、获得海外客户的直接反馈来推动我们的研发和产品改进;二、将品牌直接展示在那些之前无法接触到的优质客户面前。而研发和生产是我们已经熟练掌握的核心技能,现在只是用于指导的信息来源发生了变化。挑战主要来自服务和运营人员,来到线上,后市场服务,包括送货、安装,一些客户教育都需要取代传统中间商的角色补位,亚马逊企业购的卖家服务提供了很大帮助,使我们能迅速运转起来,我们也在产品本身进行了适应网络化的改良。运营人员方面,我们地处产业带小城市,生产便利,但在跨境电商运营人才的招募上有一定难度,更多还是自行摸索和培养运营人员。

林振梅

用本土化专业化服务对抗排外性是攻克商采客户,成功切入日本市场!

通过亚马逊企业购,我们穿透进日本商采市场。但要留住专业的企业及机构买家,还需要练好3项内功:第一是搭建优质售后体系,相比日本本土品牌,国内远程售后显然落后一步,所以我们在日本建立了实体售后点,国内再设五名日语专职客服与客户全程沟通。这样才稳定住我们企业购的客户。第二点是货量储备控制节奏,企业购客户的特点,单次下单量不大,但持续稳定下单,要做好货物储备计划,提前为长期客户规划预期订单的生产以及发货。第三是选择掌握语言能力运营人员,企业及机构买家对沟通语言要求较高,需要口语流畅,所以运营人员倾向选择熟练掌握目标市场语言的小语种人才。

关于品质和资质的工作都要前置!委托专业机构或团队做好认证,完善质量管理体系,搞定合规问题,顺利赢在起跑线!

林振梅

品控必须主动全检,认证可委托专业机构。

我们的安防类产品进入日本市场需要很多认证:电波认证,电源PS认证、日本的经济产业局的经济备案证明等等。我们委托一家专业的认证机构做齐全了一系列认证,这样产品在亚马逊企业购销售就无后顾之忧。面对客户询问资质,也能从容提供。

王淳庆

想在新市场站稳脚步,认证非做不可,商标和专利的注册保护也别忽略。

认证是必须做的基础工作,此外每到一个新区域市场,就首先要做好商标注册和专利保护。此外对当地的法规,尤其是广告法规要进行了解,因为商标和广告法规常是联动的,如果触犯了法规要求,会引来麻烦。像我们自己就遇到争议,当地竞品有一个商标是"AAA的黄色手套",兰浪的手套既不是黄色,广告也没有提到黄色,但是对方认为我们苹果绿的手套跟它注册商标长得很像,就出现了争议动作。所以注册商标和注册专利,都是保护跨境运营商最好的武器。遇到事情就是自我保护的护城河。

杜涵

作为对质量和资质高度敏感的医疗行业,我们用专业团队负责品控和认证。

康铂有规模十来人的团队专门负责品控,承担QA、QC、PQE等质量相关的管理职能,也有自己专门做认证的RA团队,当我们决定进入某个市场,RA团队就启动当地相关的医疗类认证。我们很早就建立起来了一个质量管理体系标准,IOS13485 ,这个质量管理体系标准同时符合欧洲和美国对于医疗器械的要求。因为有IOS13485,疫情期间我们符合了美国所有认证标准要求,获得了拿到更多订单的机会。

线上商采乃大势所趋,卖家应主动求变,保稳求胜!亚马逊企业购可以助您布局全球多站点,线上线下双赛道低风险稳取胜,全渠道拓展,以下卖家机巧对策请收好!

王淳庆

疫情下商采客户纷纷从线下转向线上,那就要马上紧跟,重兵线上。

面对今年复杂而动荡的外贸环境,首先要紧跟市场的变动,比如疫情下消费者纷纷从线下转向线上,那就要马上紧跟,布局线上。我们今年就加大了在亚马逊企业购的投入。其次分散供应链,这样可以降低采购价格、降低了供应链风险,提高供应链品质。第三加强产品研发,推出更多有竞争力的产品,既提高当下的市场竞争力,也可为疫情之后取得发展先机。

修晓彤

当前形势下,多渠道甚至是全渠道的海外营销变得非常重要。

亚马逊企业购、外贸大数据营销,海外站自建系统等等,要顺应商采数字化的趋势,去思考外贸新模式的可能性。大B、小B相结合,甚至下沉至终端的消费者,将运营化整为零,是传统外贸当下必须的选择。

林振梅

顺应需求趋势,疫情期间我们做了多站点的开发。

我们做的电脑视频安防品类,作为疫情期间远程工作必需品,线下渠道订单虽然确实少了很多,但线上的流量反而大增,这段时间线上销量长了四到五倍。顺应需求趋势,疫情期间我们还在亚马逊企业购做了多站点的开发,广告投放也同步加大,整体实现四倍增长。应对疫情供应链生产恢复慢的问题,我们用了外发单方式满足产品供应。

杜涵

困难时期,把运营聚焦于重要渠道做增长。

要在非常困难的疫情期间实现增长,要明确的是,客户第一,运营第二。首先保证客户服务质量和产品质量,以好产品服务好客户为原点。运营则要聚焦于重要渠道做增长。2018年、2019年康铂尝试了出口多渠道,包括海外其它商采渠道,医疗垂直领域商采渠道,在今年我们反而计划聚焦于出口重点渠道,比如亚马逊企业购去直接获取客户。目标是重点渠道做到行业内前十名甚至前5名。聚集公司全部精力能力以及资源,打造超级链接。

五位优秀的亚马逊企业购卖家通过结合自身企业情况,为大家讲述了各品类在做跨境购获取成功的秘籍,想必各位磨拳霍霍准备加入的卖家们都已经拿起小本本狂记笔记了!

(来源:亚马逊全球开店)


文章来源:https://www.ikjzd.com/home/132990

徐家骏:https://www.ikjzd.com/w/1803

捷汇:https://www.ikjzd.com/w/419

史泰博:https://www.ikjzd.com/w/2112

汇通天下:https://www.ikjzd.com/w/2055

勤商网:https://www.ikjzd.com/w/2219

上线两月内斩获百万美金大单!教你一个轻松拓客的亚马逊致富商机

凭借亚马逊品牌好声誉和专业服务,众多全球500强企业,教育、政府和医疗机构等也在亚马逊上搜索并采购产品,作为跨境商采的先行者,亚马逊企业购(Amazon Business)帮助中国卖家直达海外终端优质企业买家及机构,完善的物流和企业端专属运营工具轻松斩获在线商采订单。亚马逊企业购全球年销售额已超过100亿美元,且持续保持高速增长,其中第三方卖家销售额占比超过50%1。

并发编程之美(基础篇)

目录
  • 第一章 并发编程线程基础
    • 什么是线程
    • 线程的创建与运行
    • 线程的等待与通知
    • 线程中的方法
    • 线程上下文切换
    • 线程死锁
    • 守护线程与用户线程
    • ThreadLocal
    • InheritableThreadLocal
  • 第二章 并发编程的其他基础知识
    • 什么是多线程并发编程
    • Java 中的线程安全问题
    • Java 中共享变量的内存可见性
    • Java 中的 synchronized 关键字
    • Java 中的 volatile 关键字
    • Java 中的 CAS 操作
    • Unsafe 类
    • 指令重排序
    • 伪共享
    • 锁的概述

阅读 《Java并发编程之美》 - 翟陆续 (作者) 的笔记

第一章 并发编程线程基础

什么是线程

进程和线程的关系:

  • 线程是进程中的一个实体,线程本身是不会独立存在的
  • 进程是系统资源分配和调度的基本单位
  • 一个进程中至少有一个线程,进程中的多个线程共享进程的资源
  • CPU资源比较特殊,是分配到线程的

Java内存区域:一个进程中有多个线程,线程共享进程的堆和方法区,但线程有自己的程序计数器、虚拟机栈、本地方法栈

img

图片来源:Java内存区域(运行时数据区域)详解、JDK1.8与JDK1.7的区别 - 傑0327

线程的创建与运行

创建线程的三种方式:

  1. 继承 Thread 类
  2. 实现 Runnable 接口
  3. 使用 FutureTask 类

直接继承 Thread 并重写 run() 方法:

public class MyThread extends Thread{ @Override public void run() {  // code... }}
new MyThread().start();

实现 Runnable 接口:

public class Task implements Runnable{ @Override public void run() {  // code... }}
new Thread(new Task()).start();

实现 Callable 接口,可以有返回值:

public class Task implements Callable<Integer> { @Override public Integer call() throws Exception {  return null; }}
FutureTask<Integer> futureTask = new FutureTask<>(new Task());new Thread(futureTask).start();futureTask.get();

总结:使用继承 Thread 的方式并没有将任务逻辑和线程机制分离,每次执行任务时都需要创建一个线程。而使用 Runnable 或 Callable 接口,可以使用一个线程执行多个任务。(最直接的方式就是将任务提交到线程池)

线程的等待与通知

// 阻塞线程的方法,直到:// * 其他线程调用了 notify() 或 notifyAll()// * 线程被中断,则抛出中断异常// * 线程超时返回// * 虚假唤醒obj.wait();obj.wait(5000);obj.notify();obj.notifyAll();

调用以上方法需要获取对象的监视器锁,有两种方式可以获得对象的监视器锁:

// 获取对象本身的监视器锁public synchronized void method(){ while (!condition) 	wait();}
// 获取 obj 对象的监视器锁synchronized(obj){ while (!condition)  obj.wait();}
  • 获取监视器锁后先检查条件是否满足,否则调用 wait() 将线程挂起并释放锁(使用 while循环 是为了避免虚假唤醒)
  • 当其他线程唤醒正在等待的线程时,被唤醒的线程会先竞争锁,得到锁的线程会从 wait() 方法返回并再次检查条件

线程中的方法

thread.join(); // 挂起调用线程,直到目标线程执行结束Thread.sleep(1000); // 在指定时间内不参与CPU调度(静态方法)Thread.yield(); // 提示CPU线程希望提前废弃CPU时间(静态方法)

线程中断:

thread.interrupt(); // 中断线程对象 thread.isInterrupted(); // 判断线程对象是中断Thread.interrupted(); // 判断调用线程是否被中断并清除中断标志(静态方法)

中断线程只是将标志置位,具体如何响应取决于线程自身(可能抛出异常或继续执行)

ReentrantLock reentrantLock = new ReentrantLock();reentrantLock.lock(); // 等待线程获得锁再抛出中断异常reentrantLock.lockInterruptibly(); // 立即抛出线程中断

线程上下文切换

系统的调度方式有两种:抢占式和非抢占式

在抢占式的系统中,线程通过时间片轮询的方式占用CPU,当时间片用完时让出CPU,执行线程上下文切换。

这种调度方式决定了当执行CPU密集型任务时,最多只能启动和CPU数同等的线程数;而执行IO密集型任务时,一般可以启动更多的线程。

线程死锁

死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成的相互等待的现象,在无外力的作用下,这些线程会一直等待而无法继续运行下去。

产生死锁的四个必备条件:

  • 互斥条件:资源只能被一个线程持有(具有排他性)
  • 请求并持有:线程已持有资源,并请求其他被其他线程持有的资源
  • 不可剥夺条件:被持有的资源只有持有它的线程可以释放
  • 环路等待条件:对资源的请求形成一个环形链

解决死锁的方式:

  • 资源申请的有序性原则
  • (InnoDB)请求超时、图算法

守护线程与用户线程

JVM 进程在用户线程都结束后退出,而不管是否在有守护线程在执行。

Thread thread = new Thread();thread.setDaemon(true);thread.start();

ThreadLocal

下面代码每个线程都会拥有自己的SimpleDateFormat对象:

// 从SimpleDateFormat 的注释可以得知,SimpleDateFormat 不是线程安全的private ThreadLocal<SimpleDateFormat> DateFormatContext = ThreadLocal.withInitial(()->{ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");});

ThreadLocal 实现原理:

img

图片来源:ThreadLocal explained - DuyHai

Thread.set() 方法:

// 获取当前线程的 threadLocals 变量并将键值对(theadLocal, value)放到里面// 并且 threadLocals 是懒加载的public void set(T value) { Thread t = Thread.currentThread(); ThreadLocalMap map = getMap(t); if (map != null)  map.set(this, value); else  createMap(t, value);}
ThreadLocalMap getMap(Thread t) { return t.threadLocals;}

线程本地的变量:TheadLocalMap 是一个线程本地的散列表

public class Thread implements Runnable { /* ThreadLocal values pertaining to this thread. This map is maintained  * by the ThreadLocal class. */ ThreadLocal.ThreadLocalMap threadLocals = null; /*  * InheritableThreadLocal values pertaining to this thread. This map is  * maintained by the InheritableThreadLocal class.  */ ThreadLocal.ThreadLocalMap inheritableThreadLocals = null;}

懒加载的 threadLocals:

void createMap(Thread t, T firstValue) { t.threadLocals = new ThreadLocalMap(this, firstValue);}
/** * The initial capacity -- MUST be a power of two. */private static final int INITIAL_CAPACITY = 16;ThreadLocalMap(ThreadLocal<?> firstKey, Object firstValue) { table = new Entry[INITIAL_CAPACITY]; int i = firstKey.threadLocalHashCode & (INITIAL_CAPACITY - 1); table[i] = new Entry(firstKey, firstValue); size = 1; setThreshold(INITIAL_CAPACITY);}

ThreadLocal.get() 方法:

public T get() { Thread t = Thread.currentThread(); ThreadLocalMap map = getMap(t); if (map != null) {  // 以 TheadLocal 对象为键,从线程本地的散列表取值  ThreadLocalMap.Entry e = map.getEntry(this);  if (e != null) {   @SuppressWarnings("unchecked")   T result = (T)e.value;   return result;  } } return setInitialValue();}

如果 Map 或对应的键还未初始化,则会返回初始值:

private T setInitialValue() { T value = initialValue(); Thread t = Thread.currentThread(); ThreadLocalMap map = getMap(t); if (map != null)  map.set(this, value); else  createMap(t, value); return value;}

初始值默认是 null:上面的示例则将初始值设置为 SimpleDateFormat 对象

protected T initialValue() { return null;}
public static <S> ThreadLocal<S> withInitial(Supplier<? extends S> supplier) { return new SuppliedThreadLocal<>(supplier);}static final class SuppliedThreadLocal<T> extends ThreadLocal<T> { private final Supplier<? extends T> supplier; SuppliedThreadLocal(Supplier<? extends T> supplier) {  this.supplier = Objects.requireNonNull(supplier); }	 // 所以 supplier 本质是一个工厂,而 ThreadLocalMap 就是一个线程本地的容器 // supplier.get() 会返回新创建的对象 @Override protected T initialValue() {  return supplier.get(); }}

ThreadLocal.remove():当本地对象不使用时要将其移除,防止内存溢出

public void remove() { ThreadLocalMap m = getMap(Thread.currentThread()); if (m != null)  m.remove(this);}

ThreadLocal 总结:

  • ThreadLocal 其实就是一个工具壳,它会操作线程本地的散列表 threadLocals,散列表以 ThreadLocal 对象为键
  • 线程本地的 threadLocals 是懒加载的,初始容量是 16
  • 在不使用对象后应调用 remove() 避免内存溢出

InheritableThreadLocal

使用 TheadLocal,子线程访问不了父线程的本地变量,InheritableThreadLocal 解决了该问题。

源码分析:

public class InheritableThreadLocal<T> extends ThreadLocal<T> {	// 根据父线程本地变量的值计算子线程本地变量的值(这里是直接返回原值) protected T childValue(T parentValue) {  return parentValue; } // 重写父类 ThreadLocal 的方法,将 threadLocals 替换成 inheritableThreadLocals ThreadLocalMap getMap(Thread t) {  return t.inheritableThreadLocals; } void createMap(Thread t, T firstValue) {  t.inheritableThreadLocals = new ThreadLocalMap(this, firstValue); }}

在创建线程时,会调用 init() 方法:将父线程的本地变量浅拷贝到子线程

public Thread() { init(null, null, "Thread-" + nextThreadNum(), 0);}
private void init(ThreadGroup g, Runnable target, String name,     long stackSize, AccessControlContext acc) { //...  // 如果父线程的 inheritableThreadLocals 不为 null,则执行以下代码 if (parent.inheritableThreadLocals != null)  this.inheritableThreadLocals =   ThreadLocal.createInheritedMap(parent.inheritableThreadLocals);	 //...}
static ThreadLocalMap createInheritedMap(ThreadLocalMap parentMap) { return new ThreadLocalMap(parentMap);}
private ThreadLocalMap(ThreadLocalMap parentMap) { Entry[] parentTable = parentMap.table; int len = parentTable.length; setThreshold(len); table = new Entry[len]; // 变量父线程散列表键值对 for (int j = 0; j < len; j++) {  Entry e = parentTable[j];  if (e != null) {   // 如果键不为 null   @SuppressWarnings("unchecked")   ThreadLocal<Object> key = (ThreadLocal<Object>) e.get();   if (key != null) {    // 获取键对应的值    Object value = key.childValue(e.value);    // 创建新的键值对    Entry c = new Entry(key, value);    int h = key.threadLocalHashCode & (len - 1);    // 使用线性探测法解决散列冲突    while (table[h] != null)     h = nextIndex(h, len);    table[h] = c;    size++;   }  } }}

InheritableThreadLocal 总结:InheritableThreadLocal 在创建线程时通过将父线程的本地变量复制到子线程以实现子线程可以访问父线程本地变量的目的。

第二章 并发编程的其他基础知识

什么是多线程并发编程

并发与并行的概念:

  • 并发是指同一时间段内多个任务同时在执行
  • 并行是指单位时间内多个任务同时在执行

时间段由多个单位时间组成

任务类型:

  • IO 密集型任务:对于IO密集型任务,我们应该尽量减少线程阻塞时对CPU的占用,减少CPU空闲时间
  • CPU密集型任务:对于CPU密集型任务,我们应该尽量减少线程上下文切换的开销

Java 中的线程安全问题

共享资源:可以被多个线程读写的资源

当多个线程同时对共享资源进行读写时,就必须进行同步。

Java 内存模型规定,将所有变量都存放在主内存中,当线程使用变量时,会把内存里面的变量复制到自己的工作内存,线程读写变量时操作的都是自己工作内存中的变量。

这时,就需要通过同步机制来保证对共享资源操作的原子性

image-20201102152438158

Java 中共享变量的内存可见性

Java 的内存模型是一个抽象的概念,工作内存对应到硬件架构就是CPU内的存储器、一级缓存、二级缓存。

​ image-20201102152855951

缓存导致的内存可见性问题:

  1. 线程A对共享变量1进行读写,并将结果同步到缓存和主内存
  2. 线程B对共享变量1进行读写(从二级缓存读取),并将结果同步到缓存和内存
  3. 此时,线程A在此对共享变量A进行读写,就会从一级缓存读到脏数据

Java 中的 synchronized 关键字

synchronized 是对象内部的一个监视器锁,它是一个排他锁。

synchronized 的内存语义:

  • 进入 synchronized 块的内存语义是把 synchronized 块内使用到的变量从线程的工作内存中清除,这样在 synchronized 块内使用到该变量时就不会从线程的工作内存中获取,而是直接从主内存中获取;
  • 退出 synchronized 的语义是把 synchronized 块内对共享变量的修改刷新到主内存。

synchronized 可以解决共享变量内存的可见性问题,也可以用来实现原子性操作

Java 中的 volatile 关键字

当一个变量被声明为 volatile 时,线程在写入变量时不会把值缓存在寄存器或其他地方,而是会把值刷新会主内存;当其他线程读取该共享变量时,会从主内存重写获取最新值,而不是使用当前线程工作内存中的值。

volatile 可以解决共享变量内存的可见性问题和指令重排序问题,但不能保证操作的原子性

Java 中的 CAS 操作

CAS 通过硬件保证操作的原子性。

如果被操作的值存在环形转换,使用CAS算法就可能会出现ABA问题。解决的方式是增加一个递增的版本号或时间戳。

Unsafe 类

Unsafe 类中的方法:

// 获取变量的偏移值public native long objectFieldOffset(Field f);// 获取数组第一元素的地址public native int arrayBaseOffset(Class<?> arrayClass);// 获取数组一个元素的占用的字节public native int arrayIndexScale(Class<?> arrayClass);// 原子性地更新public final native boolean compareAndSwapLong(Object o, long offset,            long expected,            long x);// 获取 Long 类型的值(具有 volatile 语义)public native long getLongVolatile(Object o, long offset);// 设置 Long 类型的值(具有 volatile 语义)public native void putLongVolatile(Object o, long offset, long x);// 设置 Long 类型的值(不具有 volatile 语义)public native void putOrderedLong(Object o, long offset, long x);// 阻塞当前线程public native void park(boolean isAbsolute, long time);// 唤醒指定线程public native void unpark(Object thread);
// 封装 CAS 算法的方法public final long getAndSetLong(Object o, long offset, long newValue) { long v; do {  v = getLongVolatile(o, offset); } while (!compareAndSwapLong(o, offset, v, newValue)); return v;}public final long getAndAddLong(Object o, long offset, long delta) { long v; do {  v = getLongVolatile(o, offset); } while (!compareAndSwapLong(o, offset, v, v + delta)); return v;}

获取 Unsafe 对象:

public final class Unsafe { private static native void registerNatives(); static {  registerNatives();  sun.reflect.Reflection.registerMethodsToFilter(Unsafe.class, "getUnsafe"); } private Unsafe() {} private static final Unsafe theUnsafe = new Unsafe();  @CallerSensitive public static Unsafe getUnsafe() {  Class<?> caller = Reflection.getCallerClass();  if (!VM.isSystemDomainLoader(caller.getClassLoader()))   throw new SecurityException("Unsafe");  return theUnsafe; }}	

由于 Unsafe 类做了限制,这里需要使用反射来获取 Unsafe 对象:

public class UnsafeTest { volatile long value; static long valueOffset; static Unsafe unsafe; static {  try {   Field unsafeField = Unsafe.class.getDeclaredField("theUnsafe");   unsafeField.setAccessible(true);   unsafe = (Unsafe) unsafeField.get(null);   valueOffset = unsafe.objectFieldOffset(UnsafeTest.class.getDeclaredField("value"));  } catch (Exception e) {   e.printStackTrace();  } } public static void main(String[] args) {  UnsafeTest test = new UnsafeTest();  boolean success = UnsafeTest.unsafe.compareAndSwapLong(test, UnsafeTest.valueOffset, 0, 1);  System.out.println(success);  System.out.println(test.value); }}

指令重排序

Java 内存模型允许编译器和处理器对指令重排序以提高运行性能。

在单线程下重排序可以保证最终执行的结果与程序顺序执行的结果一致,但是在多线程下就会存在问题。

用volatile 可以解决指令重排序的导致的问题。

伪共享

伪共享出现的原因是因为缓存和主内存进行数据交换的单位是缓存行,多线程去修改同一缓存行的不同变量时,只有一个线程可以去修改缓存行的变量,因为缓存一致性协议会使其他线程的同一缓存行失效,使线程只能重新从二级缓存或主内存读取,从而造成性能下降。

在单线程下,缓存行可以充分利用程序运行的局部性原理,从而提高程序性能。

多线程解决缓存行的方法:

  1. 字节填充
  2. @sun.misc.Contended 注解

使用 @Contended 注解使需要使用参数:-XX:-RestrictContended;

默认宽度是 128 字节,可以使用 -XX:ContendedPaddingWidth 自定义宽度;

锁的概述

  • 悲观锁与乐观锁
  • 独占锁与共享锁
  • 公平锁与非公平锁
  • 可重入锁
  • 自旋锁 (默认次数是10次,-XX:PreBlockSpinsh)

原文转载:http://www.shaoqun.com/a/488006.html

kkr:https://www.ikjzd.com/w/1340

landing:https://www.ikjzd.com/w/2368

声网agora:https://www.ikjzd.com/w/2176


目录第一章并发编程线程基础什么是线程线程的创建与运行线程的等待与通知线程中的方法线程上下文切换线程死锁守护线程与用户线程ThreadLocalInheritableThreadLocal第二章并发编程的其他基础知识什么是多线程并发编程Java中的线程安全问题Java中共享变量的内存可见性Java中的synchronized关键字Java中的volatile关键字Java中的CAS操作Unsafe类
环球市场:https://www.ikjzd.com/w/1762
拍拍网:https://www.ikjzd.com/w/2205
澳门有什么景点?:http://tour.shaoqun.com/a/45731.html
公司企业植树节活动方案:http://tour.shaoqun.com/a/62660.html
阳西沙扒湾好玩吗?:http://tour.shaoqun.com/a/2512.html

keycloak~自定义redirect_uri的方法

在使用keycloak集成springboot的过程中,对于需要授权访问的接口,它会跳到keycloak里进行登录,之前有个redirect_uri,登录成功后会跳回本客户端,而这个地址默认没有修改的地方,需要我们手动开发,这块不是很方便。

自定义redirect_uri

一 重写BeanPostProcessor来实现

@Componentpublic class KeycloackAuthenticationProcessingFilterPostProcessor implements BeanPostProcessor { private static final Logger logger = LoggerFactory.getLogger(KeycloackAuthenticationProcessingFilterPostProcessor.class); private void process(KeycloakAuthenticationProcessingFilter filter) {  filter.setRequestAuthenticatorFactory(new SpringSecurityRequestAuthenticatorFactory() {   @Override   public RequestAuthenticator createRequestAuthenticator(HttpFacade facade, HttpServletRequest request, KeycloakDeployment deployment, AdapterTokenStore tokenStore, int sslRedirectPort) {    return new SpringSecurityRequestAuthenticator(facade, request, deployment, tokenStore, sslRedirectPort) {     @Override     protected OAuthRequestAuthenticator createOAuthAuthenticator() {      return new OAuthRequestAuthenticator(this, facade, deployment, sslRedirectPort, tokenStore) {       @Override       protected String getRequestUrl() {        return "http://localhost:8081/callback";       }      };     }    };   }  }); } @Override public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {  if (bean instanceof KeycloakAuthenticationProcessingFilter) {   logger.info("Injecting Custom handler...");   process(((KeycloakAuthenticationProcessingFilter) bean));  }  return bean; }

二 在没有授权时,直接跳到 授权系统,然后观察地址上redirect_uri已经发生变化了
1

参考文档:https://stackoverflow.com/questions/54163924/how-to-set-redirect-uri-in-keycloak-with-spring-boot

原文转载:http://www.shaoqun.com/a/487998.html

垂直电商:https://www.ikjzd.com/w/1450

西集网:https://www.ikjzd.com/w/1353

名人堂是什么:https://www.ikjzd.com/w/1082


在使用keycloak集成springboot的过程中,对于需要授权访问的接口,它会跳到keycloak里进行登录,之前有个redirect_uri,登录成功后会跳回本客户端,而这个地址默认没有修改的地方,需要我们手动开发,这块不是很方便。自定义redirect_uri一重写BeanPostProcessor来实现@ComponentpublicclassKeycloackAuthenticati
巴克莱:https://www.ikjzd.com/w/2775
赛兔:https://www.ikjzd.com/w/2375
上海迪士尼票价预计超300元 - :http://tour.shaoqun.com/a/52853.html
1月份云南天气怎样?去旅游的话穿什么衣服好?:http://tour.shaoqun.com/a/44341.html
稻城亚丁在哪里?稻城亚丁好玩吗?:http://tour.shaoqun.com/a/5778.html

Facebook速推帖编辑方法

Facebook速推帖编辑方法

通过 Facebook 商家主页速推帖子后,您有时可能还需要更改Facebook广告帖子或停止速推。您可以针对帖子进行以下更改。请注意,您还需要拥有广告权限,才能编辑速推帖。您可以编辑速推帖的某些内容,例如预算、投放期和受众,帮助您覆盖预期受众。

1、编辑预算

前往 Facebook 商家主页。

点击主页顶部的成效分析。

点击左侧菜单中的帖子。

在已发布帖子版块找到想编辑的帖子,然后点击查看推广。

点击左上角的编辑推广。

点击"总预算"下的下拉菜单。选择不同的预算金额,或点击自定义自行设置预算金额。

点击保存更改。

2、编辑投放期

前往 Facebook 商家主页。

点击商家主页左上角附近的成效分析。

点击左侧菜单中的帖子。

在已发布帖子版块找到想编辑的帖子,然后点击查看推广。

点击左上角的编辑推广。

在投放期下,在投放至旁输入新的日期。

点击保存更改。

3、编辑受众

前往 Facebook 商家主页。

点击商家主页左上角附近的成效分析。

点击左侧菜单中的帖子。

在已发布帖子版块找到想编辑的帖子,然后点击查看推广。

点击左上角的编辑推广。

在受众版块,您可以编辑受众,选择不同受众或点击新建受众。

点击保存更改。

4、编辑Instagram版位

前往 Facebook 商家主页。

点击主页左上角附近的成效分析。

点击左侧菜单中的帖子。

在已发布帖子版块找到想编辑的帖子,然后点击查看推广。

点击左上角的编辑推广。

在 Instagram 下勾选或取消勾选在 Instagram 推广旁的选项框。*

*如果没有看到此选项框,可能是因为您没有将 Instagram 帐户关联至 Facebook 商家主页。

5、暂停或恢复速推

如果您在速推结束前选择暂停或删除主页帖子速推,则仅需支付速推帖子已花费的部分预算。如果恢复暂停的速推,您将继续支付费用,直至用完最初设置的总预算。

请务必牢记,速推帖子时,无需预付费。这意味着,暂停或删除主页速推帖后,您可能会收到账单。

前往 Facebook 商家主页。

点击商家主页左上角附近的成效分析。

点击左侧菜单中的帖子。

在已发布帖子版块找到想编辑的帖子,然后点击查看推广。

点击左上角投放中旁的。如果显示为绿色,则说明速推正在进行中。如果显示为灰色,则说明速推已暂停。

点击确定以确认。

6、删除速推

删除速推帖广告并不会删除用于创建速推的帖子,只是删除速推帖推广。

前往 Facebook 商家主页。

点击商家主页左上角附近的成效分析。

点击左侧菜单中的帖子。

在已发布帖子版块找到想编辑的帖子,点击显示速推金额的按钮(例如已花费 $5.00 速推)

点击左下角的。

点击删除广告。

点击确定以确认。

7、管理账单和支付方式

当您开始通过商家主页创建推广或速推帖子时,可以管理支付方式和查看账单记录。这些操作可在广告管理工具中完成。

设置帐户花费上限:

设置帐户花费上限能够帮助您确保预算不超支。建议您在通过商家主页创建广告之前设置帐户花费上限,或在广告创建完毕后立即设置。帐户花费上限是指您愿意为 Facebook 广告花费的最高总金额。

查看账单记录:

您可以前往广告管理工具的账单版块查看账单记录。根据您所在的国家/地区以及支付方式设置的不同,账单可能会存在差异。您可能还会在账单记录中看到多项收费。这些费用加起来不会超过您在创建广告之初设置的预算。汇总金额有时候会低于预算,这是由于您的广告未赢得广告竞拍。

所有广告(包括通过商家主页创建的推广)都要参与广告竞拍。您的广告会在竞拍中与其他广告一起争夺在 Facebook 平台展示的机会。竞拍会考虑两个因素:广告为广告主带来的价值(帮助广告主面向受众推广业务并获得成效);广告能否为 Facebook 系列应用和服务的用户创造具有相关性的积极体验。如果广告经常无法赢得竞拍,您设置的总预算可能就不会用完。

编辑支付方式:

您也可以通过广告管理工具添加、编辑和移除支付方式。完成更改后,在通过商家主页创建推广时,即可在支付方式版块看到更改后的支付方式。

原文转载:http://fashion.shaoqun.com/a/288420.html

燕文物流:https://www.ikjzd.com/w/2229

aca:https://www.ikjzd.com/w/1371

香港会计师事务所:https://www.ikjzd.com/w/2434


通过Facebook商家主页速推帖子后,您有时可能还需要更改Facebook广告帖子或停止速推。您可以针对帖子进行以下更改。请注意,您还需要拥有广告权限,才能编辑速推帖。您可以编辑速推帖的某些内容,例如预算、投放期和受众,帮助您覆盖预期受众。 1、编辑预算 前往Facebook商家主页。 点击主页顶部的成效分析。 点击左侧菜单中的帖子。 在已发布帖子版块找到想编辑的帖子,然后点击查看推广。 点击左
shopyy:https://www.ikjzd.com/w/1661
DMM:https://www.ikjzd.com/w/2026
珠海农科奇观花卉节有什么活动?2020珠海农科奇观花卉节活:http://tour.shaoqun.com/a/21971.html
广西桂林特产:芒编工艺品 - :http://tour.shaoqun.com/a/10981.html
江西南昌特产:李渡高梁酒 - :http://tour.shaoqun.com/a/50452.html

【干货】Shopee“双十一”店铺装修最全图文详解!手把手带你装修顶流店铺!

【干货】Shopee

跨境东南亚的各位掌柜们,双十一即将开始,你的店铺准备好了吗?

这一段时间,猴哥先后给大家介绍了跨境东南亚的两大电商平台,Shopee与Lazada的双十一平台政策,以及跨境东南亚双十一的选品逻辑,今天给大家分享一下如何才能够给自己的店铺引流,如何才能让自己的店铺达到在双十一活动中流量的最大化。

由于双十一各个站点不尽相同,且活动节奏营销日历等都有一些偏差,猴哥主要以Shopee为例,以东南亚最大的印尼站点来做解析。然后应用到其他各个站点,或者Lazada的方式方法是一样的。

【店铺装修】

俗话说得好,人要面子,树要皮。那店铺也是要门面。所以要消化流量,提高转化,店铺装修少不了。店铺装修不到位,流量来了也是消化不良。

平台在进行或者经历一场大促的时候,就好像我们过春节一样,家家户户都需要贴春联,挂红灯笼。在平台过双十一也是一样的。我们卖家的每个店铺,也需要来挂上一些"红灯笼",贴上一些"春联"。不说有什么镇宅的作用,一方面是图个喜庆,另一方面也是给用户穿第一个信号,本店在双十一有大促。

而在双十一的大环境下,所有的用户都会有一种不买就吃亏的感觉,所以做好店铺的装修,非常的重要。那怎么做呢?

1、加入平台双十一元素

一般平台会准备一些有关这次大促供给卖家的装修素材,素材包括有11.11的logo、字体、还有一些装饰花边的图案,还有平台一直宣导的折扣情况。怕大家看不懂印尼文,所以我主要截图一下台湾市场的装修素材图给大家打个样。

这代表的是,咱们的店铺,也是享受平台的满减福利。那在店铺的装修中,我们就可以把这个图放到我们的轮播中,这样用户进入店铺的时候就会发现,这家店也是平台罩的,可以使用平台发放的优惠券,免运等。

2、突出自家店铺的主题

双十一的店铺装修,除了加入平台的双十一元素之外,还要明确好自己店铺的主题是什么。不然会让用户觉得很费解,这次大促,你到底便宜了啥?我到底有什么便宜可赚?这个其实对于一些垂直类目的卖家来说就显得非常的友好,因为他们的店铺基本上都属于一个大类,例如可以做一个双十一的睡衣特辑,那么给用户传达的就非常清晰,这次大促,我们店的睡衣大促销了!

那么其实大家还是杂货店居多的话,猴哥也建议可以做一个主题出来,拎出来一部分,就好比猴哥上篇发的有关东南亚双十一选品的内容。我们可以做收纳主题,内衣主题,还可以做饰品主题。这样用户才会根据店铺的主题去选购他们想要的产品。那有一种非常好的表现形式就是,我们可以把自己的双十一引流款,做这么一张图,放在轮播之中轮播展示。我们可以看到,有产品图,有吸引人的价格,还有购买这个产品可以享受的服务与优惠政策。

3、设置返虾币、优惠券

在Shopee,虾币是与淘宝的淘金币是基本一样的产品。也就是可以用来抵扣消费的现金。因此这其实对于用户都非常有吸引力。东南亚暂时没能够有较为领先的电商玩法,但是对于这些简单的操作却乐此不疲,在经历了复杂的天猫店铺运营之后,再到Shopee的运营颇有一种返璞归真的感觉。

此外就是设置优惠券,卖家是可以设置店铺优惠券进行满减活动的,满减活动就是希望用户能够买到多少钱,再给多少的优惠,这个有啥作用,猴哥就不细说了。

然后是免运,东南亚的物流体系尚不发达,所以就如同10年前的淘宝一样,用户在平台购买商品是需要支付运费的。那其实双十一,平台基本上都会免运,所以不设置也问题不大。猴哥真是太操心你们的运营了,插一句,还记得菲律宾上线的店内秒杀吗?记得安排起来。

4、商品Listing

做完了店铺的整体装修之后。我们还需要在商品Listing上进行优化,并且是对双十一进行针对性的优化。在Shopee的流量分发逻辑中,有80%的流量是来自于搜索,因此,对于标题是必然需要针对双十一进行优化,需要加入一些新的变化,因为大家的搜索习惯会发生变化,具体的要根据平台,根据搜索框以及平台的推荐词来进行变化,猴哥不能误人子弟,但是这是必须要关注的,否则流量始终会差那么一些。

怕大家看不懂印尼语,猴哥截图一手虾皮台湾市场的热门搜索。但是猴哥还是要提醒一下,如果产品与热门搜索不搭边,请不要强行攀关系,乱改标题将被扣分并关进小黑屋。

然后,商品的主图也需要变化,例如加上Shopee双十一的商品主图边框,这都是常规操作,但是有一点需要谨慎,因为可能有些卖家朋友是来自于天猫以及淘宝的,那实际上我们了解国内的淘宝天猫双十一的主图那叫一个花里胡哨,东南亚用户还是喜欢看一些比较极简的主图,干净整洁,所以我们常规加个框就好了。

最后,商品Listing猴哥建议在商品详情页的位置,还是要说明一下本店在双十一期间的优惠政策,提醒用户该领券的领券,该秒杀的秒杀,让用户更加清晰直观的了解本店的双十一优惠力度,将有效促进店铺的销量。这个话术请各位陈独秀们自由发挥,猴哥就不提供模板了。

最后的最后,祝大家大卖!(来源:跨境电商猴哥)

以上内容属作者个人观点,不代表立场!本文经原作者授权转载,转载需经原作者授权同意。

原文转载:http://fashion.shaoqun.com/a/288405.html

reverb:https://www.ikjzd.com/w/1273

gtin:https://www.ikjzd.com/w/136

oklink:https://www.ikjzd.com/w/1362


跨境东南亚的各位掌柜们,双十一即将开始,你的店铺准备好了吗? 这一段时间,猴哥先后给大家介绍了跨境东南亚的两大电商平台,Shopee与Lazada的双十一平台政策,以及跨境东南亚双十一的选品逻辑,今天给大家分享一下如何才能够给自己的店铺引流,如何才能让自己的店铺达到在双十一活动中流量的最大化。 由于双十一各个站点不尽相同,且活动节奏营销日历等都有一些偏差,猴哥主要以Shopee为例,以东南亚最大的
pocket:https://www.ikjzd.com/w/1903
声网agora:https://www.ikjzd.com/w/2176
禅域小镇游玩攻略?六祖禅域小镇一日游攻略?:http://tour.shaoqun.com/a/73960.html
北京动物园门票价格?开放时间?:http://tour.shaoqun.com/a/43027.html
方言方语|2019网络流行语盘点跨境圈热词:https://www.ikjzd.com/home/113537

患者自述:我过了12年无性婚姻!女人长期没有房事,有啥危害?_女性

核心提示:关于无性婚姻的定义,心理咨询师武志红认为:正常夫妻一年内性生活少于10次,也就是差不多少于一月一次,就算无性婚姻。然而,性调查报告显示:超过10%的女性一年都没有性生活,大概30%的女性一个月只有2次性生活。

"现在很多女生既不想谈恋爱,也不想结婚了。"下午,小琳发出这样的感慨。

小琳是母胎单身,虽然已经25岁,她七大姑八大姨也给她介绍了很多对象,但她一直对这件事很"佛系"。

当然,她也有生理需求,不过现在科技这么发达,有的是办法可以解决……总之,不管用哪种方法,总比憋着强!

也有很多人,虽然结了婚,却一直在过着"无性婚姻",不禁让人唏嘘感慨。

"无性"是婚姻头号烦恼

若欣今年38岁,是一个外企白领。

虽然已经年近40,但若欣身材姣好,风韵犹存,一看就是把日子过得很精致的女人。在很多人同龄人眼里,若欣是"人生赢家"。她的老公是国外大学研究生毕业,温文尔雅,待人温和。

然而,若欣却"有苦说不出"。

原来,结婚12年,若欣和老公从来没有过一次性生活。维持着无性婚姻,若欣身心俱疲,老公也逐渐厌倦,经常找借口夜不归宿。

有一次,若欣在一次商务培训中,"邂逅"了一个很聊得来的大巴司机,两个萍水相逢的人渐渐走到了一起,还发生了不该发生的事。若欣心里清楚,大巴车司机与自己不是一个阶层的人,他说话粗俗,还有酗酒和赌博的恶习。然而,他在"那方面",特别能满足若欣。

若欣不知道该如何做出选择,一边青梅竹马的老公和苦苦维持的无性婚姻,一边是毫无精神交流但却能给自己带来久违的肉体愉悦的陌生男人。

和若欣一样有着相似经历的人,还有很多很多。

关于无性婚姻的定义,心理咨询师武志红认为:正常夫妻一年内性事少于10次,也就是差不多少于一月一次,就算无性婚姻。然而,性调查报告显示:超过10%的女性一年都没有夫妻生活,大概30%的女性一个月只有2次。

2009年,性学专家潘绥铭教授发布的一份调查报告显示:中国夫妻无性婚姻占25%。2017年,日本有数据显示,47.2%的夫妻正处于无性婚姻。在16-25岁的年龄段中,分别有46%的女性和25%的男性对性接触产生抵触心理。

长期没有房事,对身体有哪些影响?

没了性,婚姻还有希望吗?可以说,性不是婚姻中最重要的,但是,没了性,夫妻双方一定会产生距离,导致感情出现裂缝,甚至婚姻破裂。

性爱在婚姻生活中起着不可替代的作用,身体的交流可以使夫妻双方感情升温,还可以有效减少心脏病和心肌梗塞的发生,保护男性的前列腺,长期没有性事,对男性和女性的身体都会产生许多不利影响。

对于男性来说,长期没有性生活容易发生ED、降低精子质量、引起前列腺炎、增加患上心脑血管疾病的风险等。

——对男性的影响

1、引起ED

性生活频率低与勃起功能障碍有一定关联性,《美国医学杂志》上的研究指出,性事次数很少的男性,发生ED的风险是每周至少一次男性的两倍以上。原因在于,每次产生欲望时,男性的大脑会刺激脑垂体,使之勃起。如果长期没有性事,"小弟弟"对脑垂体发出的信号就会不敏感,导致反应变慢,神经迟钝退化,引发ED。

2、降低精子质量

长期没有性事,精子就无法射出,导致附睾内储存太多的精液,抑制睾 丸产生新的精子,从而降低精子质量,减弱精子活力,严重的还会导致不育。

3、引起前列腺炎

定期射精可以清除前列腺内堆积的前列腺液,如果长期没有性事,精液无法射出,前列腺液就会大量堆积,消炎杀菌的粘液也会变少,损害前列腺功能,导致前列腺肥大或肿大,最终诱发前列腺炎。

4、增加心脑血管疾病风险

一次性事相当于一次中等强度的运动,可以消耗多余热量,增强心肺功能,稳定血压,对心脏有着积极作用。长期缺乏性生活,容易增加心脑血管疾病的几率。

——对女性的影响

对于女性来说,缺乏性事同样会影响身体健康。

1、内分泌失调

长期没有性生活,女性体内的雌激素就无法正常分泌,引起内分泌失调,从而导致肤色暗沉、月经失调、脾气变差等。

2、增加妇科疾病风险

性生活可以刺激阴道,增加粘液的分泌,减少病菌的繁殖。长期没有性生活,阴道的自净能力就会降低,容易滋生细菌和病菌,引起阴道炎、盆腔炎、宫颈炎等妇科炎症。

3、造成性冷淡

长期没有性事,身体会进一步抑制荷尔蒙分泌,导致性欲望逐渐下降,性功能逐渐衰退,造成性冷淡。

4、诱发乳腺癌

性生活过少、欲望下降,乳房也会处于长期的抑制状态,容易引起乳腺增生,增加乳腺癌的风险。调查表明,性功能低下者和高龄未婚、丧偶女性并列成为乳腺癌三大高危人群。

5、产生心理问题

女性感情比较细腻,长期没有性事,容易产生不安、焦虑、抑郁等情绪,产生不良心理问题。久而久之,甚至会引起抑郁症,危害身体健康。

每个人都有正常的生理需求,适度的性生活,对健康是有一定好处的。长期缺乏性事,会引起方方面面的问题。不过,大多数人在面对"性"的时候,是会产生羞耻心理的。其实大可不必,"性"是人之常情。因此,当夫妻双方因为"性"产生矛盾和隔阂时,应该坐下来好好沟通,找到"无性"的原因,积极应对。

参考资料:

[1]《无性婚姻最可怕的地方,从不是没有"性"》.武志红.2019-11-21

[2]《调查称日本无性婚姻增多 年轻人嫌麻烦》.环球网.2010-11-24

未经作者允许授权,禁止转载

原文转载:http://health.shaoqun.com/a/128526.html

乐一番:https://www.ikjzd.com/w/1562

blackbird:https://www.ikjzd.com/w/950

ifttt:https://www.ikjzd.com/w/956


核心提示:关于无性婚姻的定义,心理咨询师武志红认为:正常夫妻一年内性生活少于10次,也就是差不多少于一月一次,就算无性婚姻。然而,性调查报告显示:超过10%的女性一年都没有性生活,大概30%的女性一个月只有2次性生活。 "现在很多女生既不想谈恋爱,也不想结婚了。"下午,小琳发出这样的感慨。小琳是母胎单身,虽然已经25岁,她七大姑八大姨也给她介绍了很多对象,但她一直对这件事很"佛系"。当然,她也有生
moss:https://www.ikjzd.com/w/1653
邮乐网购:https://www.ikjzd.com/w/1776
环球易购:https://www.ikjzd.com/w/1034
梵蒂冈瑞士护卫队的500年 - :http://tour.shaoqun.com/a/50958.html
深圳有哪些有营养的水果?具体哪些地方有?:http://tour.shaoqun.com/a/145.html

亚马逊推出物流清仓计划,仓储费减免还能收回库存费用!

亚马逊推出物流清仓计划,仓储费减免还能收回库存费用!

亚马逊近日公告表示,卖家可以使用亚马逊物流清仓来恢复符合要求的可售和不可售库存的价值,并避免支付长期仓储费,避免弃置库存做填埋处理,或免除处置库存归还给卖家的麻烦。

据悉,亚马逊物流清仓计划仅面向受邀卖家,自 2020 年 10 月 30 日起开始实施。在此日期之前无法创建清仓订单。卖家若有兴趣加入该计划,可在亚马逊后台查询。

以下为亚马逊物流清仓计划内容详情:

运作方式

卖家可以选择使用亚马逊物流清仓,通过值得信赖的提供商清算库存,而无需为弃置或移除冗余库存或买家退回的亚马逊物流库存而付款。通过清算库存,卖家可以收回部分库存费用,同时避免支付月度仓储费和长期仓储费。例如,可以通过清算库存来接收付款(您的"净回收价值"),而不是向亚马逊付款以弃置库存。

对于卖家提交进行清仓的符合要求的商品,亚马逊将尽量在提交后的 30 天内找到买家。如果成功,亚马逊会将买家为这些商品支付的金额(扣除费用)转入卖家账户。净回收价值将在货件在卖家平台的【移除订单详情】页面标记为【已完成】后大约 60 天内显示在卖家的账户中。

亚马逊如何计算您的净回收价值

亚马逊将首先通过评估以下几个因素来确定您的库存价值:

1、卖家的销售历史记录

2、在亚马逊网站上的平均亚马逊物流销售价格

3、该特定 ASIN 的销售历史记录

根据合约费率,第三方清算人将按总回收价值购买此库存,总回收价值可能因与清算人签订的合约费率而异。对于在 2021 年 3 月 31 日之前提交的所有订单,亚马逊将免除计划费用。

自 2021 年 4 月 1 日起,亚马逊将针对每个清仓订单扣除相关费用,卖家将收到净回收价值。促销期可能会发生变化。

在提交清仓订单中符合条件的库存后,亚马逊将不再针对该库存收取月度仓储费和长期仓储费。

费用

自 2021 年 4 月 1 日起,亚马逊将对卖家清算的每件商品收取两项单独的费用:

1、每件商品费用(基于尺寸和重量)(英国/欧盟:表 1)


2、总回收价值的 14% 销售佣金请注意,亚马逊物流清仓计划目前仅面向受邀卖家。

符合要求的商品

ASIN 的清仓资格需遵守法律、安全和法规指南。

不符合清仓要求的商品包括:

1、亚马逊物流禁运商品

2、超过有效期的具有有效期的亚马逊物流库存

3、易融的亚马逊物流库存

4、危险物品(危险品)

5、需要批准的分类和商品以及禁止销售的其他受限商品

6、销售价格低于 £7.00/€7.00 的库存

创建清仓订单

1、从卖家平台创建清仓订单:

a.使用以下任意页面确定要进行亚马逊物流清仓的库存。

  • 管理冗余库存

  • 修复无在售信息的亚马逊库存

  • 库龄

  • 建议移除

  • 管理所有库存

  • 亚马逊库存

b.在大多数页面上,您可以选择一个或多个 ASIN,然后在操作列表中选择【创建移除订单】。对于【建议移除报告】,点击【开始移除】程序(仅在您拥有我们建议移除的库存时显示)。

在【创建移除订单】页面的【移除方法】下,选择【清算】。选择要清算的【可售数量】或【不可售数量】的金额。准备就绪后,点击【继续】。审核完您的订单后,点击【下】【单】完成清仓请求。


常见问题

对于清算的商品,我能收回多少成本?

平均而言,最高收回价值约为您的 ASIN 平均售价的 20%*。对于您通过亚马逊物流清仓服务实际可收回的金额,我们不做担保。

*此结果可能有所不同,具体取决于与购买库存的第三方批发清算人签订的合约费率。亚马逊不能保证设定的回收率。

在等待清仓的过程中,我能否将已提交清仓的库存用于配送买家订单?

提交清仓订单后,在等待清仓的过程中,您的库存仍可用于配送买家订单。如果在等待清仓的过程中使用您的库存配送买家订单,您将收到销售收益,而非清仓款项。当库存已经完成清算而不可再用于配送订单时,库存将在您的【移除订单详情】报告中显示为"完成"。

如果我选择进行清仓的商品不符合清仓要求,会怎么样?

您将在创建移除订单工作流程中收到错误消息,告知您是否选择了不符合清仓要求的库存。

亚马逊会帮助我计算通过该计划进行清算的商品相关税费吗?

是的。要加入该计划,您需要注册亚马逊增值税计算服务。该服务可免费为您提供账单和增值税计算报告等功能。了解有关亚马逊增值税计算服务的更多信息。亚马逊不提供税务、法律或其他方面的专业建议。请咨询税务顾问,帮助您了解您的增值税义务。

来源:快捷键跨境物流

文章来源:https://www.ikjzd.com/home/132884

凹凸曼:https://www.ikjzd.com/w/1392

primc:https://www.ikjzd.com/w/129

trademanager:https://www.ikjzd.com/w/730

智邦:https://www.ikjzd.com/w/2376

联动优势:https://www.ikjzd.com/w/1921

亚马逊推出物流清仓计划,仓储费减免还能收回库存费用!

亚马逊近日公告表示,卖家可以使用亚马逊物流清仓来恢复符合要求的可售和不可售库存的价值,并避免支付长期仓储费,避免弃置库存做填埋处理,或免除处置库存归还给卖家的麻烦。

旺季来临+仓容受限下的发货补货建议

今年的整个亚马逊运营对于大部分卖家来说,都是快乐并痛着。

快乐的是,用心踏实经营采用FBA发货的卖家,大部分都可以保持稳定的销量和较高的利润;而痛苦则来自几乎每个卖家都时不时遭遇断货的情况。

按照当前亚马逊FBA发货的规则,新品上架,第一批只能发货200个,很多卖家总是焦虑这么少的库存根本不够卖,以致于到处找各种所谓的黑科技破解之道。

对于这种情况,我觉得大可不必,首先,市面上所谓的黑科技,基本上都是钻平台漏洞,而大而不僵的亚马逊总是很快的会把漏洞补起来,而且会秋后算账。

相信不少通过类似于多页面创建发货计划的卖家已经有体会,货发出去了,在空中飞海上漂的过程中,却发现自己的发货计划被取消了,又是一夜白头的焦虑,还有些卖家,货是入仓了,可自己的实际发货数量远远超出平台给的仓容限度,然后呢,等来的是一份高额的超容费,何苦呢!

那面对当前的仓容受限和自己对旺季销售期望的不对等,我们该怎么样去应对呢?

我的建议是以下几点:

一、首批发货,按照系统给的仓容数量,发足200个,可以根据实际的重量,优先考虑采取商业快递或空运的方式发货。

二、库存上架后,结合"螺旋式爆款打造法"中的"低价+广告"的方式,广告导入流量,低价带动转化,推动Listing的快速出单,用十天左右出完200个。根据我们自己运营团队和孵化营学员上新品的经验来看,一般情况下,10天左右销完200个,亚马逊系统会根据该Listing的动销率,自动的将该Listing的总仓容提升至400,800,甚至2000不等。仓容得到提升和释放,补货受限的局面也就不再是问题了。

三、为了确保时效,减少断货的风险,缩短断货的时间,在第一批的200个库存销售过程中,销量达到100个左右后,每天测试创建FBA发货计划,看仓容是否得到提升,一旦测试到仓容提升,提升后的可补货量能够达到最低的发货重量,可以再次采取商业快递或者空运的方式快速补一批货过去。

当然,这样一来,第一批和第二批的补货都有可能因为FBA头程的物流成本偏高而没有太多利润,但这个阶段,我们应该保有的理念是,确保Listing能够稳定有库存有销量,确保Listing的权重逐步积累和增加,这才是最重要的。至于利润,有了前期的积累,必然可以在后期的运营中获取利润。

四、 在销量拉升和等待仓容提升的过程中,卖家应该提前订货备货,货备在自己手中,一旦测试出仓容提升,就可以实现当日快速补货,减少等待时间,提高发货效率。

五、当仓容提升到2000以上时,根据自己的销售预期、货品重量、发货成本等综合考虑,分批分量创建多个发货计划,分别安排快递、空运和海运等不同的发货方式,以此来既确保发货时效,又降低发货成本,同时,还可以避免某一发货方式和渠道出现延误、被扣关等情况导致的销售断货运营受影响的风险。

以上建议呢,主要对于新品上架仓容不够的情况来说的,但对于正在稳定运营的产品,则要结合当前的可用仓容,尽可能适当多备货,尽可能早发货,尽可能采用多种发货方式结合的方式发货,来确保运营不断货、头程低风险、物流成本低三方面的把握。

如果能够精准把握仓容和销售,降低断货风险,再加上运营中聚焦于爆款打造,在接下来的三个月里,相信你也能够稳稳的摘取到旺季的硕果。

原文转载:http://fashion.shaoqun.com/a/287399.html

ideal:https://www.ikjzd.com/w/2286

俄罗斯灰色清关:https://www.ikjzd.com/w/1409

沃尔码:https://www.ikjzd.com/w/220


今年的整个亚马逊运营对于大部分卖家来说,都是快乐并痛着。 快乐的是,用心踏实经营采用FBA发货的卖家,大部分都可以保持稳定的销量和较高的利润;而痛苦则来自几乎每个卖家都时不时遭遇断货的情况。 按照当前亚马逊FBA发货的规则,新品上架,第一批只能发货200个,很多卖家总是焦虑这么少的库存根本不够卖,以致于到处找各种所谓的黑科技破解之道。 对于这种情况,我觉得大可不必,首先,市面上所谓的黑科技,基本上
hts:https://www.ikjzd.com/w/525
square:https://www.ikjzd.com/w/2106
日本名古屋温泉樱花之旅 - :http://tour.shaoqun.com/a/10649.html
珠海梦幻水城学生价格?梦幻水城优惠区域包含学生证吗?:http://tour.shaoqun.com/a/60172.html
卖家心声:短暂旺季之后,我一直忙着清库存:https://www.ikjzd.com/home/103628

地外相关信息-婴儿房出现恐怖的光源

 地外相关信息中包含很多不同的声音,英国有一位父亲希望能够观看孩子睡着的模样,所以就安装了监视器,但是没有想到在婴儿床上居然看到恐怖的光源,而且一直照着女儿的睡脸,这真是让人觉得有些匪夷所思,那么这到底是怎么回事呢?图片8.png

 

    英国有一位31岁的父亲,为了能够看到自己是三个月大的女儿,所以就是用监视器,但是后期发现在婴儿床下有一个正在诡异的发光球正在晃动,当时他在看到时马上就吓得无法动弹,虽然从来都不相信有鬼魂的说法,但是在看到这个光球时,真的让人害怕至极。根据地外相关信息,这可能就是一种来自于外太空的生物。而当他鼓起勇气之后来到女儿的房间,但是在走进之后却没有任何的异常现象。

 

根据地外相关信息的报道,这可能就是来自于外太空的生物,因为在几个月之前,当时这名父亲也发现过,在自己女儿婴儿床上出现一个从来都没有出现过的洋娃娃,当时他没有过多的理会,但是现在在看到之后就想这或许就是某一种解释,有一位灵媒在看到之后也说这就是来自于另外一个世界的房客,她很喜欢这名小女孩,不过还同样需要确认在这一个月家族中有没有其他过世或者是出生的人,然后才能够确定,另外也需要看是否属于家族所养的一种宠物,这些都需要引起生活的重视。

 


原文转载:http://tech.shaoqun.com/a/298323.html

promoted:https://www.ikjzd.com/w/971

vava:https://www.ikjzd.com/w/2780

代购公司:https://www.ikjzd.com/w/1982


地外相关信息中包含很多不同的声音,英国有一位父亲希望能够观看孩子睡着的模样,所以就安装了监视器,但是没有想到在婴儿床上居然看到恐怖的光源,而且一直照着女儿的睡脸,这真是让人觉得有些匪夷所思,那么这到底是怎么回事呢?英国有一位31岁的父亲,为了能够看到自己是三个月大的女儿,所以就是用监视器,但是后期发现在婴儿床下有一个正在诡异的发光球正在晃动,当时他在看到时马上就吓得无法动弹,虽然从来都不相信有鬼魂
ideal:https://www.ikjzd.com/w/2286
刘小东:https://www.ikjzd.com/w/1853
2020深圳自贡灯会在哪里?2020深圳欢乐谷自贡灯会怎么:http://tour.shaoqun.com/a/32737.html
合肥海洋世界表演时间?合肥海洋世界节目时间表?:http://tour.shaoqun.com/a/47330.html
2020樟木头观音山相亲会报名电话?东莞观音山相亲大会免费:http://tour.shaoqun.com/a/22408.html

地球生命是什么时候出现的?

太阳系的第一批有机体或在地球构成之前就已呈现。

太阳系的构成想像图。年幼的太阳周围有一个原行星盘,行星构成于其间。NASA/JPL-Caltech/T。 Pyle

地球生命是什么时分呈现的?至今没有人能够说清。依照一般的主意,生命是在地球构成之后,在地球环境中渐渐演化出来的。尽管有人以为,是彗星为地球带来了生命的原材料,比方水和有机物,可是生命的演化和诞生地依然是地球。

可是最近有科学家估测,生命在一些特其他天体上也有过演化的时机,它们在地球构成之前就有或许现已在太阳系中呈现。

这是一个实在的原行星盘,由阿塔卡马大型毫米/亚毫米波望远镜拍照。ESO, ALMA (ESO/NAOJ/NRAO); A。 Isella; B。 Saxton (NRAO/AUI/NSF)

这些特其他天体叫“微行星”,只存在于太阳系的初期。微行星是行星的前身,也是行星的拼装元件。这些小天体具有生命演化所需的悉数要素。微行星中有一些并不会参加行星的构成,可是它们有时机在行星构成期完毕后,坠落到那些“温文”的行星——比方地球外表。假如那时生命现已在这些微行星上萌生,那么这些生命就有时机在行星上落地生根和分散。

可是问题的要害是,微行星有没有或许演化出生命?这儿的不知道要素太多,究竟咱们现在无法重现生命的诞生进程。但美国亚利桑那州立大学地球与空间勘探学院行星科学家、NASA金属小行星赛琪(Psyche)勘探方案首席研讨员Lindy Elkins-Tanton以为,微行星有这个时机。这些存在于太阳系开始150万年的微行星,具有生命所需的悉数基本要素——液态水、有机分子和能量。

人们在1969年坠落在澳大利亚南部的默奇森陨石中,发现过至少35种氨基酸。这块陈旧的太空石头“闻起来就像一口油井”。Lindy Elkins-Tanton标明,“还有什么地方比一块温暖、湿润的默奇森陨石碎片更适合孕育生命呢?”

默奇森陨石的母体,和一切前期微行星相同,能够自行发生能量。这种能量来自放射性元素的衰变。详细而言,默奇森陨石的母体热量来自“铝26”的衰变。热量能够自内而外加热微行星。这种热量适当多,部分微行星会因而完全熔化,而其他一些或许只会部分熔化。

部分熔化的微行星最终会构成金属核、熔岩幔和原始岩壳,变成一种内热外冷的小天体。在热量的驱动下,内部流体能够经过一条条通道涌向外表。而这些流体中或许就会包含液态水。

这就难免让人发生遥想。在这些微行星的岩壳下,是否会具有生命的宜居环境?Lindy Elkins-Tanton以为是有的,并且这种环境能够坚持适当长的时刻。

计算机模仿成果显现,直径50千米的微行星能够让液态水在地下坚持大约1500万年。此前的研讨还标明,较大的微行星乃至能够在5000万年内一向坚持湿润。

假如这悉数确实发生了,那么最要害的不确定要素,就只剩下了这几千万年,关于生命从无到有地发生是否满足?很可惜,关于这个问题至今没有人能够答复。

咱们充其量只知道,地球诞生于45亿年前。在地球上,生命一般以为是在38亿年前诞生的。但迄今为止咱们发现的最早生命遗址,其实是41亿年前留下来的。近年还有科学家以为,最早的地球生命实际上在43.6亿年前就现已呈现了。

需求留意的是,Elkins-Tanton并非建议生命源于微行星,而是指出了一种或许。这种或许性,应该能够让咱们从头审视那些现已研讨了很多年的陨石,看看它们体内是否存在被咱们忽视的生命遗址?看看生命是否有或许,以及又是如安在太阳系内四处分散的?

生命在天体之间的传达并不是一个全新的概念。一向以来就有人以为,地球生命源自火星,它们是“乘坐着”小行星或彗星碰击发生的碎片来到地球的。还有一些人乃至以为地球生命来自其他太阳系,是“奥陌陌”这样在太空中漂泊的星际彗星把咱们带到了这儿。

可是这些都是猜测。鉴于人类的好奇心和限制,或许咱们会一向问自己这三个问题:咱们是谁?咱们从哪里来?咱们要到哪里去?

直到永久。

阿塔卡马大型毫米/亚毫米波望远镜拍照的20个原行星盘。每一个都在孕育一个“太阳系”。ALMA (ESO/NAOJ/NRAO), S。 Andrews et al。; NRAO/AUI/NSF, S。 Dagnello阿塔卡马大型毫米/亚毫米波望远镜拍照的20个原行星盘。每一个都在孕育一个“太阳系”。ALMA (ESO/NAOJ/NRAO), S。 Andrews et al。; NRAO/AUI/NSF, S。 Dagnello

原文转载:http://tech.shaoqun.com/a/298319.html

tenso:https://www.ikjzd.com/w/1552

krazy:https://www.ikjzd.com/w/1801

retriever:https://www.ikjzd.com/w/773


太阳系的第一批有机体或在地球构成之前就已呈现。太阳系的构成想像图。年幼的太阳周围有一个原行星盘,行星构成于其间。NASA/JPL-Caltech/T。Pyle地球生命是什么时分呈现的?至今没有人能够说清。依照一般的主意,生命是在地球构成之后,在地球环境中渐渐演化出来的。尽管有人以为,是彗星为地球带来了生命的原材料,比方水和有机物,可是生命的演化和诞生地依然是地球。可是最近有科学家估测,生命在一些特
声网agora:https://www.ikjzd.com/w/2176
大森林:https://www.ikjzd.com/w/2268
2020年元旦去深圳东冲旅游好玩吗?:http://tour.shaoqun.com/a/103.html
福建惠安女在福建哪个地方?她们是怎样一个群体呢?:http://tour.shaoqun.com/a/6030.html
亚马逊运营真的很难做?盘点那些年你走过的弯路:https://www.ikjzd.com/home/21009