[JDK工具-6] jmap java内存映射工具

在这里插入图片描述

文章目录

  • 1. 介绍
  • 2. 主要选项
  • 3. 生成java堆转储快照 jmap -dump
  • 4. 显示堆详细信息 jmap -heap pid
  • 5. 显示堆中对象统计信息 jmap -histo pid

jmap(Memory Map for Java)

1. 介绍

位置:jdk\bin

作用:

  • jdk安装后会自带一些小工具,jmap命令(Memory Map for Java)是其中之一。主要用于打印指定Java进程(或核心文件、远程调试服务器)的共享对象内存映射或堆内存细节。

  • jmap命令可以获得运行中的jvm的堆的快照,从而可以离线分析堆,以检查内存泄漏,检查一些严重影响性能的大对象的创建,检查系统中什么对象最多,各种对象所占内存的大小等等。可以使用jmap生成Heap Dump。

  • 如果不想使用jmap命令,要想获取Java堆转储快照还有一些比较“暴力”的手段:譬如在前面用过的 -XX:+HeapDumpOnOutOfMemoryError参数,可以让虚拟机在OOM异常出现之后自动生成dump文件,通过-XX:+HeapDumpOnCtrlBreak参数可以使用[ctrl]+[Break]键让虚拟机生成dump文件,又或者在Linux系统下通过Kill -3 命令发送进程退出信息“恐吓”一下虚拟机,也能拿到dump文件。

  • jmap的作用并不仅仅是为了获取dump文件,他还可以查询finalize执行队列,java堆和永久代的详细信息,如空间使用率、当前用的是哪种收集器等。

语法:

D:\javasoft\java_soft\jdk\bin>jmap
Usage:jmap [option] <pid>(to connect to running process)jmap [option] <executable <core>(to connect to a core file)jmap [option] [server_id@]<remote server IP or hostname>(to connect to remote debug server)where <option> is one of:<none>               to print same info as Solaris pmap-heap                to print java heap summary-histo[:live]        to print histogram of java object heap; if the "live"suboption is specified, only count live objects-clstats             to print class loader statistics-finalizerinfo       to print information on objects awaiting finalization-dump:<dump-options> to dump java heap in hprof binary formatdump-options:live         dump only live objects; if not specified,all objects in the heap are dumped.format=b     binary formatfile=<file>  dump heap to <file>Example: jmap -dump:live,format=b,file=heap.bin <pid>-F                   force. Use with -dump:<dump-options> <pid> or -histoto force a heap dump or histogram when <pid> does notrespond. The "live" suboption is not supportedin this mode.-h | -help           to print this help message-J<flag>             to pass <flag> directly to the runtime system

2. 主要选项

选项作用
-dump生成java堆转储快照,格式为:-dump:[live,]format=b,file=,其中live子参数说明是否只dump出存活对象
-finalizerinfo显示在F-Queue中等待Finalizer线程执行finalize方法的对象,只在linux/solaris平台下有效
-heap显示堆详细信息,如使用哪种回收期、参数配置、分带状况等,只在linux/solaris平台下有效
-histo显示堆中对象统计信息,包括类、实例数量和合计容量
-permstat以ClassLoader为统计口径显示永久代内存状况,只在linux/solaris平台下有效
-F当虚拟机进程对-dump选项没有响应时,可以使用这个选项强制生成dump快照,只在linux/solaris平台下有效

3. 生成java堆转储快照 jmap -dump

生成java对转存快照,格式:jmap -dump:[live,]format=b,file=文件名
在这里插入图片描述
可以使用jdk提供的jvisualvm.exe查看hprof文件
在这里插入图片描述

4. 显示堆详细信息 jmap -heap pid

D:\javasoft\java_soft\jdk\bin>jmap -heap 8644
Attaching to process ID 8644, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.271-b09using thread-local object allocation.
Parallel GC with 8 thread(s)Heap Configuration:MinHeapFreeRatio         = 0MaxHeapFreeRatio         = 100MaxHeapSize              = 1853882368 (1768.0MB)NewSize                  = 38797312 (37.0MB)MaxNewSize               = 617611264 (589.0MB)OldSize                  = 78643200 (75.0MB)NewRatio                 = 2SurvivorRatio            = 8MetaspaceSize            = 21807104 (20.796875MB)CompressedClassSpaceSize = 1073741824 (1024.0MB)MaxMetaspaceSize         = 17592186044415 MBG1HeapRegionSize         = 0 (0.0MB)Heap Usage:
PS Young Generation
Eden Space:capacity = 185597952 (177.0MB)used     = 1365920 (1.302642822265625MB)free     = 184232032 (175.69735717773438MB)0.7359563967602402% used
From Space:capacity = 16252928 (15.5MB)used     = 0 (0.0MB)free     = 16252928 (15.5MB)0.0% used
To Space:capacity = 18874368 (18.0MB)used     = 0 (0.0MB)free     = 18874368 (18.0MB)0.0% used
PS Old Generationcapacity = 101187584 (96.5MB)used     = 26049224 (24.84247589111328MB)free     = 75138360 (71.65752410888672MB)25.743498332759877% used21147 interned Strings occupying 2233672 bytes.

5. 显示堆中对象统计信息 jmap -histo pid

显示堆中对象统计信息,包括类、实例数量和合计容量

命令格式:jmap -histo[:live]

D:\javasoft\java_soft\jdk\bin>jps -l
10048 sun.tools.jps.Jps
13072 org/netbeans/Main
16212 com.xin.demo.threaddemo.bookdemo.DeadLockDemo
8644 com.xin.demo.XinJavaDemoApplication
5560
7016 org.jetbrains.jps.cmdline.Launcher
9544 com.xin.demo.threaddemo.bookdemo.OOMTestD:\javasoft\java_soft\jdk\bin>jmap -histo 9544num     #instances         #bytes  class name
----------------------------------------------1:          1066        1822048  [B2:          6646         978560  [C3:           390         186216  [I4:          6079         145896  java.lang.String5:           722          82784  java.lang.Class6:          1372          68968  [Ljava.lang.Object;7:           845          33800  java.util.LinkedHashMap$Entry8:           791          31640  java.util.TreeMap$Entry9:           783          25056  java.util.HashMap$Node10:           443          22376  [Ljava.lang.String;11:           305          19520  java.net.URL12:            57          16656  [Ljava.util.HashMap$Node;13:           406          16240  java.lang.ref.Finalizer14:           555          13320  java.util.LinkedList$Node15:           107          10272  java.util.jar.JarFile$JarFileEntry16:           123           9840  [Ljava.util.WeakHashMap$Entry;17:           286           9152  java.util.LinkedList18:           152           8512  sun.misc.URLClassPath$JarLoader19:           113           8136  java.lang.reflect.Field20:           120           7680  java.util.jar.JarFile21:           235           7520  java.util.Hashtable$Entry22:           123           6888  sun.nio.cs.UTF_8$Encoder23:           121           6776  java.util.zip.ZipFile$ZipFileInputStream24:           111           6216  java.util.zip.ZipFile$ZipFileInflaterInputStream25:           257           6168  java.io.ExpiringCache$Entry26:           123           5904  java.util.WeakHashMap27:           110           5280  java.util.zip.Inflater28:           121           4840  java.lang.ref.SoftReference29:           119           4760  sun.nio.cs.UTF_8$Decoder30:           130           4160  java.lang.ref.ReferenceQueue31:           256           4096  java.lang.Integer32:           120           3840  java.util.zip.ZipCoder33:           111           3552  java.util.concurrent.ConcurrentHashMap$Node34:           132           3168  java.lang.StringBuffer35:            22           3072  [Ljava.util.Hashtable$Entry;36:             8           3008  java.lang.Thread37:           120           2880  java.util.ArrayDeque38:            59           2832  java.util.HashMap39:           110           2640  java.util.zip.ZStreamRef40:             5           2600  [J41:           106           2544  java.lang.StringBuilder42:            30           2400  [S43:             2           2384  [[Ljava.lang.Object;44:           132           2112  java.lang.ref.ReferenceQueue$Lock45:            26           2080  java.lang.reflect.Constructor46:            16           2048  [Ljava.util.concurrent.ConcurrentHashMap$Node;47:            60           1920  java.io.File48:            39           1872  sun.util.locale.LocaleObjectCache$CacheEntry49:             1           1568  [[B50:            96           1536  java.lang.Object51:            37           1480  java.io.ObjectStreamField52:            26           1456  java.lang.Class$ReflectionData53:            20           1280  java.util.concurrent.ConcurrentHashMap54:             2           1064  [Ljava.lang.invoke.MethodHandle;55:             1           1040  [Ljava.lang.Integer;56:             1           1040  [[C57:            36            864  java.util.jar.Attributes$Name58:            21            840  sun.util.locale.BaseLocale$Key59:            11            648  [Ljava.lang.reflect.Field;60:            19            608  java.util.Locale61:            19            608  sun.util.locale.BaseLocale62:            13            520  java.security.AccessControlContext63:            21            504  java.util.Locale$LocaleKey64:            10            480  java.util.Hashtable65:            12            480  java.util.WeakHashMap$Entry66:            18            432  sun.misc.MetaIndex67:            22            416  [Ljava.lang.Class;68:            10            400  java.io.FileDescriptor69:            13            392  [Ljava.io.ObjectStreamField;70:             1            384  com.intellij.rt.execution.application.AppMainV2$171:             1            384  java.lang.ref.Finalizer$FinalizerThread72:            16            384  java.net.Parts73:             6            384  java.nio.DirectByteBuffer74:            16            384  java.util.ArrayList75:             1            376  java.lang.ref.Reference$ReferenceHandler76:             6            336  java.nio.DirectLongBufferU77:             7            336  java.nio.HeapCharBuffer78:             6            336  java.util.LinkedHashMap79:            10            320  java.lang.OutOfMemoryError80:             3            312  [D81:            13            312  [Ljava.lang.reflect.Constructor;82:            13            312  sun.reflect.NativeConstructorAccessorImpl83:             6            288  java.nio.HeapByteBuffer84:             6            288  java.util.Properties85:             3            280  [[Ljava.lang.String;86:             5            280  java.util.ResourceBundle$CacheKey87:             5            280  sun.util.calendar.ZoneInfo88:             3            264  java.lang.reflect.Method89:            11            264  java.net.StandardSocketOptions$StdSocketOption90:             8            256  java.util.Vector91:             3            240  [Ljava.lang.ThreadLocal$ThreadLocalMap$Entry;92:             5            240  java.util.Hashtable$Enumerator93:             7            224  java.nio.file.attribute.FileTime94:             9            216  sun.misc.JarIndex95:            13            208  sun.reflect.DelegatingConstructorAccessorImpl96:             5            200  java.security.ProtectionDomain97:             6            192  java.io.FileInputStream98:             6            192  java.lang.ThreadLocal$ThreadLocalMap$Entry99:             4            192  java.util.TreeMap100:             8            192  sun.misc.URLClassPath$3101:             4            192  sun.nio.cs.StreamEncoder102:             3            192  sun.nio.cs.ext.DoubleByte$Encoder103:             2            192  sun.util.calendar.Gregorian$Date104:             4            160  java.io.BufferedWriter105:             4            160  java.lang.ClassLoader$NativeLibrary106:             5            160  java.security.CodeSource107:             4            160  java.security.PrivilegedActionException108:             5            160  java.util.ResourceBundle$LoaderReference109:             5            160  sun.util.locale.provider.LocaleProviderAdapter$Type110:             6            144  sun.misc.PerfCounter111:             3            144  sun.misc.URLClassPath112:             2            128  java.io.ExpiringCache$1113:             4            128  java.lang.StringCoding$StringEncoder114:             8            128  java.util.HashSet115:             4            128  java.util.Stack116:             1            120  java.net.SocksSocketImpl117:             5            120  java.util.Collections$UnmodifiableRandomAccessList118:             5            120  sun.misc.FloatingDecimal$PreparedASCIIToBinaryBuffer119:             2            112  java.lang.Package120:             2            112  sun.nio.cs.ISO_8859_1$Encoder121:             2            112  sun.nio.cs.ext.DoubleByte$Decoder122:             2             96  java.io.BufferedReader123:             3             96  java.io.FileOutputStream124:             4             96  java.io.OutputStreamWriter125:             4             96  java.lang.RuntimePermission126:             3             96  java.lang.StringCoding$StringDecoder127:             2             96  java.lang.ThreadGroup128:             6             96  java.lang.ThreadLocal129:             3             96  java.lang.ref.WeakReference130:             1             96  java.net.DualStackPlainSocketImpl131:             2             96  java.util.ResourceBundle$BundleReference132:             6             96  java.util.jar.Attributes133:             4             96  jdk.net.ExtendedSocketOptions$ExtSocketOption134:             1             96  sun.misc.Launcher$AppClassLoader135:             3             96  sun.net.spi.DefaultProxySelector$NonProxyInfo136:             2             96  sun.nio.cs.StreamDecoder137:             4             96  sun.security.action.GetPropertyAction138:             1             88  java.util.jar.JarVerifier139:             1             88  sun.misc.Launcher$ExtClassLoader140:             5             80  [Ljava.security.Principal;141:             2             80  [Lsun.util.locale.provider.LocaleProviderAdapter$Type;142:             2             80  java.io.BufferedInputStream143:             2             80  java.io.ExpiringCache144:             5             80  java.security.ProtectionDomain$Key145:             2             80  java.util.ServiceLoader$LazyIterator146:             2             80  sun.misc.FloatingDecimal$BinaryToASCIIBuffer147:             2             80  sun.misc.URLClassPath$1148:             2             80  sun.misc.URLClassPath$2149:             2             80  sun.util.locale.LanguageTag150:             3             72  java.io.ByteArrayOutputStream151:             3             72  java.lang.ThreadLocal$ThreadLocalMap152:             3             72  java.net.Proxy$Type153:             3             72  java.util.Arrays$ArrayList154:             3             72  java.util.Collections$SynchronizedSet155:             1             72  java.util.ResourceBundle$RBClassLoader156:             3             72  java.util.concurrent.atomic.AtomicLong157:             3             72  sun.misc.FloatingDecimal$ExceptionalBinaryToASCIIBuffer158:             1             72  sun.util.locale.provider.JRELocaleProviderAdapter159:             1             64  [F160:             2             64  [Ljava.lang.Thread;161:             2             64  java.io.DataInputStream162:             2             64  java.io.FileNotFoundException163:             2             64  java.io.FilePermission164:             2             64  java.io.PrintStream165:             2             64  java.lang.ClassValue$Entry166:             2             64  java.lang.VirtualMachineError167:             2             64  java.lang.ref.ReferenceQueue$Null168:             2             64  java.security.BasicPermissionCollection169:             2             64  java.security.Permissions170:             2             64  java.util.ArrayList$Itr171:             2             64  java.util.LinkedHashMap$LinkedEntryIterator172:             2             64  java.util.ServiceLoader173:             1             48  [Ljava.io.File;174:             2             48  [Ljava.lang.reflect.Method;175:             1             48  [Ljava.net.URL;176:             2             48  [Ljava.util.Enumeration;177:             1             48  [Ljava.util.concurrent.TimeUnit;178:             2             48  java.io.BufferedOutputStream179:             2             48  java.io.File$PathStatus180:             2             48  java.io.FilePermissionCollection181:             2             48  java.lang.Class$1182:             2             48  java.net.InetAddress$Cache183:             2             48  java.net.InetAddress$Cache$Type184:             1             48  java.net.SocketInputStream185:             2             48  java.net.URLClassLoader$3186:             2             48  java.nio.charset.CoderResult187:             3             48  java.nio.charset.CodingErrorAction188:             3             48  java.util.Collections$UnmodifiableSet189:             2             48  java.util.Date190:             3             48  java.util.HashMap$KeySet191:             3             48  java.util.LinkedHashMap$LinkedKeySet192:             2             48  java.util.ServiceLoader$1193:             1             48  java.util.StringTokenizer194:             2             48  java.util.jar.Manifest195:             2             48  sun.misc.CompoundEnumeration196:             2             48  sun.misc.FileURLMapper197:             2             48  sun.misc.NativeSignalHandler198:             2             48  sun.misc.Signal199:             3             48  sun.net.www.protocol.jar.Handler200:             2             48  sun.nio.cs.Surrogate$Parser201:             1             48  sun.nio.cs.US_ASCII$Decoder202:             1             48  sun.util.locale.provider.LocaleResources$ResourceReference203:             1             48  sun.util.resources.TimeZoneNames204:             1             48  sun.util.resources.en.TimeZoneNames_en205:             1             40  java.util.ResourceBundle$1206:             1             40  sun.nio.cs.StandardCharsets$Aliases207:             1             40  sun.nio.cs.StandardCharsets$Cache208:             1             40  sun.nio.cs.StandardCharsets$Classes209:             1             40  sun.nio.cs.ext.ExtendedCharsets210:             1             32  [Ljava.lang.OutOfMemoryError;211:             2             32  [Ljava.lang.StackTraceElement;212:             1             32  [Ljava.lang.ThreadGroup;213:             1             32  [Ljava.net.Proxy$Type;214:             1             32  java.io.ByteArrayInputStream215:             2             32  java.io.FileInputStream$1216:             1             32  java.io.WinNTFileSystem217:             1             32  java.lang.ArithmeticException218:             2             32  java.lang.Boolean219:             2             32  java.lang.ClassLoader$2220:             1             32  java.lang.NullPointerException221:             1             32  java.net.InetAddress$InetAddressHolder222:             1             32  java.net.Socket223:             2             32  java.net.URLClassLoader$3$1224:             2             32  java.nio.ByteOrder225:             2             32  java.util.Hashtable$KeySet226:             2             32  java.util.LinkedHashMap$LinkedEntrySet227:             1             32  java.util.LinkedHashMap$LinkedKeyIterator228:             2             32  java.util.concurrent.atomic.AtomicInteger229:             1             32  java.util.concurrent.atomic.AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl230:             1             32  jdk.net.ExtendedSocketOptions$1231:             1             32  sun.instrument.InstrumentationImpl232:             2             32  sun.misc.URLClassPath$JarLoader$1233:             1             32  sun.nio.cs.StandardCharsets234:             1             32  sun.util.locale.provider.LocaleResources235:             1             32  sun.util.locale.provider.LocaleServiceProviderPool236:             1             24  [Ljava.io.File$PathStatus;237:             1             24  [Ljava.lang.ClassValue$Entry;238:             1             24  [Ljava.net.InetAddress$Cache$Type;239:             1             24  [Ljava.security.ProtectionDomain;240:             1             24  [Lsun.launcher.LauncherHelper;241:             1             24  java.io.FileReader242:             1             24  java.io.InputStreamReader243:             1             24  java.lang.ClassValue$Version244:             1             24  java.lang.invoke.MethodHandleImpl$4245:             1             24  java.lang.reflect.ReflectPermission246:             1             24  java.net.Inet4Address247:             1             24  java.net.Inet6AddressImpl248:             1             24  java.net.Proxy249:             1             24  java.util.BitSet250:             1             24  java.util.Collections$EmptyMap251:             1             24  java.util.Collections$SetFromMap252:             1             24  java.util.Collections$UnmodifiableCollection$1253:             1             24  java.util.Locale$Cache254:             1             24  java.util.ResourceBundle$Control$CandidateListCache255:             1             24  java.util.concurrent.TimeUnit$1256:             1             24  java.util.concurrent.TimeUnit$2257:             1             24  java.util.concurrent.TimeUnit$3258:             1             24  java.util.concurrent.TimeUnit$4259:             1             24  java.util.concurrent.TimeUnit$5260:             1             24  java.util.concurrent.TimeUnit$6261:             1             24  java.util.concurrent.TimeUnit$7262:             1             24  sun.instrument.TransformerManager263:             1             24  sun.launcher.LauncherHelper264:             1             24  sun.misc.URLClassPath$FileLoader265:             1             24  sun.nio.cs.ISO_8859_1266:             1             24  sun.nio.cs.ThreadLocalCoders$1267:             1             24  sun.nio.cs.ThreadLocalCoders$2268:             1             24  sun.nio.cs.US_ASCII269:             1             24  sun.nio.cs.UTF_16270:             1             24  sun.nio.cs.UTF_16BE271:             1             24  sun.nio.cs.UTF_16LE272:             1             24  sun.nio.cs.UTF_8273:             1             24  sun.nio.cs.ext.GBK274:             1             24  sun.reflect.NativeMethodAccessorImpl275:             1             24  sun.util.locale.BaseLocale$Cache276:             1             24  sun.util.locale.provider.SPILocaleProviderAdapter$1277:             1             24  sun.util.locale.provider.TimeZoneNameProviderImpl278:             1             24  sun.util.resources.LocaleData$1279:             1             16  [Ljava.lang.Throwable;280:             1             16  [Ljava.security.CodeSigner;281:             1             16  [Ljava.security.cert.Certificate;282:             1             16  [Lsun.instrument.TransformerManager$TransformerInfo;283:             1             16  [Lsun.util.calendar.ZoneInfoFile$ZoneOffsetTransitionRule;284:             1             16  java.io.FileDescriptor$1285:             1             16  java.lang.CharacterDataLatin1286:             1             16  java.lang.ClassValue$Identity287:             1             16  java.lang.Runtime288:             1             16  java.lang.String$CaseInsensitiveComparator289:             1             16  java.lang.System$2290:             1             16  java.lang.Terminator$1291:             1             16  java.lang.invoke.MemberName$Factory292:             1             16  java.lang.invoke.MethodHandleImpl$2293:             1             16  java.lang.invoke.MethodHandleImpl$3294:             1             16  java.lang.ref.Reference$1295:             1             16  java.lang.ref.Reference$Lock296:             1             16  java.lang.reflect.ReflectAccess297:             1             16  java.net.InetAddress$2298:             1             16  java.net.URLClassLoader$7299:             1             16  java.nio.Bits$1300:             1             16  java.nio.charset.CoderResult$1301:             1             16  java.nio.charset.CoderResult$2302:             1             16  java.security.ProtectionDomain$2303:             1             16  java.security.ProtectionDomain$JavaSecurityAccessImpl304:             1             16  java.util.Collections$EmptyIterator305:             1             16  java.util.Collections$EmptyList306:             1             16  java.util.Collections$EmptySet307:             1             16  java.util.Hashtable$EntrySet308:             1             16  java.util.ResourceBundle$Control309:             1             16  java.util.ResourceBundle$RBClassLoader$1310:             1             16  java.util.TimeZone$1311:             1             16  java.util.WeakHashMap$KeySet312:             1             16  java.util.concurrent.atomic.AtomicBoolean313:             1             16  java.util.jar.JarVerifier$3314:             1             16  java.util.jar.JavaUtilJarAccessImpl315:             1             16  java.util.zip.ZipFile$1316:             1             16  jdk.net.ExtendedSocketOptions$PlatformSocketOptions317:             1             16  sun.misc.ASCIICaseInsensitiveComparator318:             1             16  sun.misc.FloatingDecimal$1319:             1             16  sun.misc.Launcher320:             1             16  sun.misc.Launcher$BootClassPathHolder$1321:             1             16  sun.misc.Launcher$Factory322:             1             16  sun.misc.Perf323:             1             16  sun.misc.Unsafe324:             1             16  sun.net.spi.DefaultProxySelector325:             1             16  sun.net.www.protocol.file.Handler326:             1             16  sun.reflect.DelegatingMethodAccessorImpl327:             1             16  sun.reflect.ReflectionFactory328:             1             16  sun.util.calendar.Gregorian329:             1             16  sun.util.calendar.ZoneInfoFile$1330:             1             16  sun.util.calendar.ZoneInfoFile$Checksum331:             1             16  sun.util.locale.provider.AuxLocaleProviderAdapter$NullProvider332:             1             16  sun.util.locale.provider.JRELocaleProviderAdapter$1333:             1             16  sun.util.locale.provider.SPILocaleProviderAdapter334:             1             16  sun.util.locale.provider.TimeZoneNameUtility$TimeZoneNameGetter335:             1             16  sun.util.resources.LocaleData336:             1             16  sun.util.resources.LocaleData$LocaleDataResourceBundleControl
Total         25196        3662360

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/16460.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kafka SASL_SSL集群认证

背景 公司需要对kafka环境进行安全验证,目前考虑到的方案有Kerberos和SSL和SASL_SSL,最终考虑到安全和功能的丰富度,我们最终选择了SASL_SSL方案。处于知识积累的角度,记录一下kafka SASL_SSL安装部署的步骤。 机器规划 目前测试环境公搭建了三台kafka主机服务,现在将详…

H3CNE-7-TCP和UDP协议

TCP和UDP协议 TCP&#xff1a;可靠传输&#xff0c;面向连接 -------- 速度慢&#xff0c;准确性高 UDP&#xff1a;不可靠传输&#xff0c;非面向连接 -------- 速度快&#xff0c;但准确性差 面向连接&#xff1a;如果某应用层协议的四层使用TCP端口&#xff0c;那么正式的…

智能家居完结 -- 整体设计

系统框图 前情提要: 智能家居1 -- 实现语音模块-CSDN博客 智能家居2 -- 实现网络控制模块-CSDN博客 智能家居3 - 实现烟雾报警模块-CSDN博客 智能家居4 -- 添加接收消息的初步处理-CSDN博客 智能家居5 - 实现处理线程-CSDN博客 智能家居6 -- 配置 ini文件优化设备添加-CS…

【MySQL】聊聊count的相关操作

在平时的操作中&#xff0c;经常使用count进行操作&#xff0c;计算统计的数据。那么具体的原理是如何的&#xff1f;为什么有时候执行count很慢。 count的实现方式 select count(*) from student;对于MyISAM引擎来说&#xff0c;会把一个表的总行数存储在磁盘上&#xff0c;…

Linux下Vision Mamba环境配置+多CUDA版本切换

上篇文章大致讲了下Vision Mamba的相关知识&#xff0c;网上关于Vision Mamba的配置博客太多&#xff0c;笔者主要用来整合下。 笔者在Win10和Linux下分别尝试配置相关环境。 Win10下配置 失败 \textcolor{red}{失败} 失败&#xff0c;最后出现的问题如下&#xff1a; https://…

基于物联网架构的电子小票服务系统

1.电子小票物联网架构 采用感知层、网络层和应用层的3层物联网体系架构模型&#xff0c;电子小票物联网的架构见图1。 图1 电子小票物联网架构 感知层的小票智能硬件能够取代传统的小票打印机&#xff0c;在不改变商家原有收银系统的前提下&#xff0c;采集收音机待打印的购物…

修改 ant design tour 漫游式导航的弹窗边框样式

一 说明 应项目要求&#xff0c;调整ant design tour 弹窗边框的样式。tour 原本样式是有遮罩层&#xff0c;因此没有边框看起来也不突兀。原图如下&#xff1a; 但是UI设计是取消遮罩层&#xff0c;并设置边框样式。当 取消 了遮罩层&#xff0c;没有设置边框样式的图片如下&a…

python考试成绩管理与分析:从列表到方差

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、考试成绩的输入与列表管理 二、成绩的总分与平均成绩计算 三、成绩方差的计算 四、成…

人工智能场景下的网络负载均衡技术

AI技术驱动智能应用井喷&#xff0c;智能算力增速远超通用算力。IDC预测&#xff0c;未来五年&#xff0c;我国智能算力规模年复合增长率将超50%&#xff0c;开启数据中心算力新纪元。随着需求激增&#xff0c;数据中心或智算网络亟需扩容、增速、减时延&#xff0c;确保网络稳…

rockylinux 利用nexus 搭建私服yum仓库

简单说下为啥弄这个私服&#xff0c;因为自己要学习一些东西&#xff0c;比如新版的k8s等&#xff0c;其中会涉及到一些yum的安装&#xff0c;为了防止因网络问题导致yum安装失败&#xff0c;和重复下载&#xff0c;所以弄个私服&#xff0c;当然也有为了意外保障的想法&#x…

【实战JVM】-基础篇-01-JVM通识-字节码详解

【实战JVM】-基础篇-01-JVM通识-字节码详解-类的声明周期-加载器 1 初识JVM1.1 什么是JVM1.2 JVM的功能1.2.1 即时编译 1.3 常见JVM 2 字节码文件详解2.1 Java虚拟机的组成2.2 字节码文件的组成2.2.1 正确打开字节码文件2.2.2 字节码组成2.2.3 基础信息2.2.3.1 魔数2.2.3.1 主副…

【C++】右值引用 移动语义

目录 前言一、右值引用与移动语义1.1 左值引用和右值引用1.2 右值引用使用场景和意义1.3 右值引用引用左值及其一些更深入的使用场景分析1.3.1 完美转发 二、新的类功能三、可变参数模板 前言 本篇文章我们继续来聊聊C11新增的一些语法——右值引用&#xff0c;我们在之前就已…

民国漫画杂志《时代漫画》第22期.PDF

时代漫画22.PDF: https://url03.ctfile.com/f/1779803-1248634856-2c7010?p9586 (访问密码: 9586) 《时代漫画》的杂志在1934年诞生了&#xff0c;截止1937年6月战争来临被迫停刊共发行了39期。 ps: 资源来源网络!

AIGC 006-textual-inversion使用文本反转实现个性化文本到图像生成!

AIGC 006-textual-inversion使用文本反转实现个性化文本到图像生成&#xff01; 文章目录 0 论文工作1 论文方法2 效果 0 论文工作 这篇论文 (An Image is Worth One Word: Personalizing Text-to-Image Generation using Textual Inversion) 提出了一种新颖的技术&#xff0c…

Modal.method() 不显示头部的问题

ant-design中的Modal组件有两种用法&#xff1a; 第一种是用标签&#xff1a;<a-modal></a-modal> 第二种是用Api&#xff1a;Modal.info、Modal.warning、Modal.confirm...... 一开始项目中这两种用法是混用的&#xff0c;后面UI改造&#xff0c;需要统一样式&…

Shell字符串变量

目标 能够使用字符串的3种方式 掌握Shell字符串拼接 掌握shell字符串截取的常用格式 能够定义Shell索引数组和关联数组 能够使用内置命令alias,echo,read,exit,declare操作 掌握Shell的运算符操作 Shell字符串变量 介绍 字符串&#xff08;String&#xff09;就是一系…

使用LabVIEW时遇到VISA属性错误 -1073807331的解决方案

在LabVIEW或VeriStand中使用VISA属性时&#xff0c;可能会遇到错误 -1073807331。这一错误的具体描述如下&#xff1a; 解决方案 导致VISA属性出现此错误的原因主要有以下四种&#xff1a; 属性不被使用的串行总线支持 示例 A.1&#xff1a;Is Port Connected VISA属性仅支持由…

React(四)memo、useCallback、useMemo Hook

目录 (一)memo API 1.先想一个情景 2.用法 (1)props传入普通数据类型的情况 (2)props传入对象的情况 (3)props传入函数的情况 (4)使用自定义比较函数 3.什么时候使用memo&#xff1f; (二)useMemo Hook 1.用法 2.useMemo实现组件记忆化 3.useMemo实现函数记忆化 …

如何停止 iPad 和 iPhone 之间共享短信,独立接收和发送消息

概括 在当今高度互联的数字世界中&#xff0c;Apple 设备之间的无缝连接性提供了极大的便利&#xff0c;尤其是在消息同步方面。iPhone 和 iPad 用户通常可以享受到设备间短信的自动同步功能&#xff0c;这意味着无论是在哪个设备上&#xff0c;用户都可以接收和回复消息。然而…

深入理解python列表与字典:数据结构的选择与性能差异

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、列表与字典&#xff1a;基础数据结构的对比 二、列表&#xff1a;逐个遍历的查找方式 …