很早之前就接触过同步这个概念了,但是一直都很模糊,没有深入地学习了解过,近期有时间了,就花时间研习了一下《linux内核标准教程》和《深入linux设备驱动程序内核机制》这两本书的相关章节。趁刚看完,就把相关的内容总结一下。为了弄清楚什么事同步机制,必须要弄明白以下三个问题:什么是互斥与同步?为什么需要同步机制? Linux内核提供哪            
                
         
            
            
            
             1. 虚拟化和容器技术虚拟化技术Type1: 不安装宿主机操作系统,而直接在硬件基础上安装虚拟化管理软件Type2: 安装宿主机操作系统,在宿主机操作系统之上安装虚拟化管理软件容器技术Container 是在宿主机操作系统上使用Cgroups,Namespaceses技术创建出来具有边界的特殊进程。区别虚拟化技术会虚拟出多个内核,每个虚拟机拥有一个自己的内核,彼此之间隔离性非常好。并且            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-08 03:29:33
                            
                                86阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、同步容器: 包括Vector、HashTable,以及Collections.synchronizedXXX方法包装过的容器类,同步容器对其类中的每一个对外的方法都使用synchronized关键字进行修饰,以此来保证同步,以Hashtable为栗子,它在JDK中的部分实现代码: 这样虽然保证了线程安全,但这样每次只有一个线程访问容器,所以在并发的情况下性能上会削弱许多。并且迭代时如果数据发生            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-27 08:48:06
                            
                                34阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # 如何实现“docker容器设置与宿主机时间同步”
## 1. 概述
在使用Docker时,经常会遇到容器时间与宿主机时间不同步的问题,为了解决这个问题,我们可以通过设置容器的时区来实现与宿主机时间同步。本文将介绍如何进行操作。
## 2. 具体步骤
### 步骤表格
| 步骤 | 操作 |
| --- | --- |
| 1 | 拉取一个带有时区设置的基础镜像 |
| 2 | 运行容器            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-03-25 04:29:12
                            
                                363阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1:宿主机直接执行命令给某个容器同步时间: ###sudo docker cp /etc/localtime 【容器ID或者NAME】:/etc/localtime ###sudo docker cp -L /usr/share/zoneinfo/Asia/Shanghai 【容器ID或者NAME】 ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-27 17:04:00
                            
                                1895阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            为了能够有效的控制多个进程之间的沟通过程,保证沟通过程的有序和和谐,OS必须提供一定的同步机制保证进程之间不会自说自话而是有效的协同工作。比如在共享内存的通信方式中,两个或者多个进程都要对共享的内存进行数据写入,那么怎么才能保证一个进程在写入的过程中不被其它的进程打断,保证数据的完整性呢?又怎么保证读取进程在读取数据的过程中数据不会变动,保证读取出的数据是完整有效的呢?常用的同步方式有: 互斥锁、            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-11 14:14:03
                            
                                36阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # Docker同步宿主主机时间
在使用Docker进行应用开发和部署的过程中,我们可能会遇到宿主主机时间与容器内部时间不一致的情况。这可能会导致一些问题,例如日志时间戳不准确,或者在进行跨时区的应用程序开发时出现时间错误。为了解决这个问题,我们可以使用一些方法来同步宿主主机时间和Docker容器的时间。
## 方法一:使用宿主主机的时间
默认情况下,Docker容器使用宿主主机的时间。这意            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-08-21 08:14:15
                            
                                795阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在Docker容器创建好之后,可能会发现容器时间跟宿主机时间不一致,这就需要同步它们的时间,让容器时间跟宿主机时间保持一致。如下:宿主机时间
[root@docker ~]# date
Thu Jan  4 13:42:52 CST 2018
 
容器时间
[root@docker ~]#&nbs            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2018-01-04 13:50:11
                            
                                4306阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一 Docker安装主节点        1 拉取mysql镜像:docker pull mysql:5.7.29        2 建立本地映射目录## 需要将MySQL的数据持久化到宿主机,也就是建立映射,包括配置文件、数据文件和log日志目录
mkdir -p /docker_data/mysql_master/            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-07 19:39:59
                            
                                101阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            安装 vmware tools 2. 修改虚拟机 vmx 文件     tools.syncTime 改为 "TRUE"3. 重启虚拟机        此时发现时间比系统时间少了10+个小时4. 修改 /etc/sysconfig/clock # cat /etc/sysconfig/clock&n            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2014-06-27 17:13:53
                            
                                1992阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            完全禁用时间同步即使未打开周期性时间同步,虚拟机有时也会与主机同步时间。若要完全禁用时间同步,则必须对虚拟机配置文件中的某些属性进行设置。前提条件关闭虚拟机电源。步骤1 使用文本编辑器打开虚拟机的配置 (.vmx) 文件。2 为时间同步属性添加配置行,并将属性设置为 FALSE。tools.syncTime = "FALSE"time.synchronize.continue = "FALSE"t            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2014-01-02 15:16:02
                            
                                3708阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、Docker 与 虚拟机的区别:
(1)隔离与共享:
1、每个虚拟机都有自己的系统内核;
2、Docker容器 则是通过隔离的方式让容器之间影响,容器无法影响宿主机。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-11 11:38:08
                            
                                34阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            
            共享内存比管道快哦~ 文章目录前言
一、共享内存的实现原理
二、实现共享内存的代码总结 前言 共享内存区是最快的IPC形式。一旦这样的内存映射到共享它的进程的地址空间,这些进程间数据传递不再涉及到内核,换句话说是进程不再通过执行进入内核的系统调用来传递彼此的数据. 一、共享内存的实现原理我们以上图为例,A和B是两个进程,他们都有自己的进程地址空间,进程地址空间经过页表映射到物理内存中,而共享内存是            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-25 20:27:00
                            
                                62阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            今天在使用OSS的时候,发现时间不会,也就是通过java获取的时间和实际时间不相同,相差了8小时解决方式其中下面的OSS是我的容器名称,可以换成id或者对应的容器docker cp /etc/localtime OSS:/etc/最后再重启一下容器docker restart OSS...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-01-19 16:01:43
                            
                                347阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            今天在使用OSS的时候,发现时间不会,也就是通过java获取的时间和实际时间不相同,相差了8小时解决方式其中下面的OSS是我的容器名称,可以换成id或者对应的容器docker cp /etc/localtime OSS:/etc/最后再重启一下容器docker restart OSS...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-08-07 09:58:19
                            
                                432阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.7 Dockerfile自动构建docker镜像官方构建dockerffile文件参考https://github.com/CentOS/CentOS-Dockerfiles1.7.1 Dockerfile指令集dockerfile主要组成部分: 
 基础镜像信息 FROM centos:6.8 
 制作镜像操作指令RUN yum insatll openssh-server -y 
 容器启            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-28 21:11:53
                            
                                26阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在Java并发编程中,经常听到同步容器、并发容器之说,那什么是同步容器与并发容器呢?同步容器可以简单地理解为通过synchronized来实现同步的容器。同步容器会导致多个线程中对容器方法调用的串行执行,降低并发性,因为它们都是以容器自身对象为锁,所以在需要支持并发的环境中,可以考虑使用并发容器来替代。并发容器是针对多个线程并发访问而设计的,在jdk5.0引入了concurrent包,其中提供了很            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-22 18:50:52
                            
                                15阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在宿主机安装并启动docker后,会自动创建3个docker network:bridge、host、none。可以用docker network ls命令查看。用docker network inspect bridge、docker network inspect host、docker network inspect none命令查看各docker network,会发现只有bridge有网            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-21 21:19:51
                            
                                208阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            原创NANSRE运维实践2018-02-04时间,总是宝贵的,但是,可能你生活在超前的八小时,我生活在落后的八小时,时间不统一,从而有了时间之间的差异。UTC和CST时间相差8个小时,宿主机上的时间是CST时间,而容器上的时间一般都是UTC时间,从而总是需要重新编译镜像来达到时间相同的目的。你生活在什么时间,生活在过去?还是生活在现在?梦中梦。。。。慢同步。。。慢慢同步。。。不然生活的时间跨度太大            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-03-10 09:02:43
                            
                                2131阅读