使用 tikz 的多服务器排队系统

使用 tikz 的多服务器排队系统

我需要这个系统的服务器

\usepackage{graphicx}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{amsmath}
\usepackage{amsthm}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{tikz}
\usetikzlibrary{chains,shapes.multipart}
\usetikzlibrary{shapes}
\usetikzlibrary{automata,positioning}

\begin{document} 
       \begin{figure}
       \centering
       \begin{tikzpicture}[start chain=going right,>=latex,node distance=0pt]
         \node[draw,rectangle,on chain,minimum size=1.5cm] (rr) {$I$};
         \node[draw,rectangle,on chain,draw=white,minimum size=1.3cm]{};
         % the rectangular shape with vertical lines
         \node[rectangle split, rectangle split parts=6,
         draw, rectangle split horizontal,text height=1cm,text depth=0.5cm,on chain,inner ysep=0pt] (wa) {};
         \fill[white] ([xshift=-\pgflinewidth,yshift=-\pgflinewidth]wa.north west) rectangle ([xshift=-15pt,yshift=\pgflinewidth]wa.south);
         % the circle
         \node[draw,circle,on chain,minimum size=1.5cm] (se) {$U$};
         % the arrows and labels
         \draw[->] (se.east) -- +(20pt,0) node[right] {$\mu$};
         \draw[<-] (wa.west) -- +(-20pt,0) node[left] {$\lambda$};
         \node[align=center,below] at (rr.south) {Input \\ process};
         \node[align=center,below] at (wa.south) {Queue \\ subsystem};
         \node[align=center,below] at (se.south) {Server \\ process};
       \end{tikzpicture}
          \caption{The model represented as a queuing system.}
             \label{fig:queue}
       \end{figure}
\end{document}

在此处输入图片描述

由两个并行运行的子服务器组成。我该怎么做?

这就是我想要实现的

在此处输入图片描述

答案1

稍微长一点,你可以用下面的代码绘制一些东西:

\documentclass{article}
\usepackage{graphicx}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{amsmath}
\usepackage{amsthm}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{tikz}
\usetikzlibrary{chains,shapes.multipart}
\usetikzlibrary{shapes,calc}
\usetikzlibrary{automata,positioning}

\begin{document} 
       \begin{figure}
       \centering
       \begin{tikzpicture}[start chain=going right,>=latex,node distance=0pt]
         \node[draw,rectangle,on chain,minimum size=1.5cm] (rr) {$I$};
         \node[draw,rectangle,on chain,draw=white,minimum size=1.3cm]{};
         % the rectangular shape with vertical lines
        \node[rectangle split, rectangle split parts=6,
        draw, rectangle split horizontal,text height=1cm,text depth=0.5cm,on chain,inner ysep=0pt] (wa) {};
         \fill[white] ([xshift=-\pgflinewidth,yshift=-\pgflinewidth]wa.north west) rectangle ([xshift=-15pt,yshift=\pgflinewidth]wa.south);
        \node at (wa.east) (A){};
        \draw [-latex] (A) --+(30:1.5) coordinate (B1);
        \draw [-latex] (A) --+(-30:1.5) coordinate (B2);
         % the circle
         \node [draw,circle,on chain,minimum size=1cm] at (B1) (se1) {$U_1$};
         \node [draw,circle,on chain,minimum size=1cm] at (B2) (se2) {$U_2$};
         \draw [-latex] (se1.east) --+(-25:1.65) coordinate (C1);
          \draw [-latex] (se2.east) --+(25:1.65) coordinate (C2);
         \node (O) at ($(C1)!0.5!(C2)$) {};
         \node [draw,circle,on chain,minimum size=3pt] at (O) (C3){};
         \draw [-latex] (C3)--+(0:2)node[right] {$\mu$};
         % the arrows and labels
      %   \draw[->] (se.east) -- +(20pt,0) node[right] {$\mu$};
         \draw[<-] (wa.west) -- +(-20pt,0) node[left] {$\lambda$};
         \node[align=center,below] at (rr.south) {Input \\ process};
         \node[align=center,below] at (wa.south) {Queue \\ subsystem};
        \node[align=center,below] at (se2.south) {Server \\ process};

       \end{tikzpicture}
          \caption{The model represented as a queuing system.}
             \label{fig:queue}
       \end{figure}
\end{document}

在此处输入图片描述

相关内容