For generation the best mesh for any surface you can follow these steps:
1_ Determine height and perimeter of cylinder
2_ Determine the desired number of nodes or number of meshes in the perimeter and axial direction of cylinder.
3_ For the better generation of mesh, extract all coordinates of nodes by considering a point as reference point.
4_ Apply mesh command for generation of mesh. This way only generates rectangular mesh type but I recommend trapezoidal mesh type. For this, you should specify sides of the the trapezoid. You can perform this by applying a side ratio in the calculation such as 1.2 or another desired ratio but if you use from HYPERMESH criteria, it suggests the best side ratio for any geometric shape. You can apply side ratio in the both perimeter and axial direction of cylinder.
By applying side ratio, Mesh concentration differ from one point to another point.
Spider configuration is another type of mesh that be used for many purposes. For generation of this type of mesh, you can apply HYPERMESH criteria or another criteria for side ratio.
Note that:
1_ Side ratio is the ratio of longest length to smallest length of mesh geometry or is the ratio of mesh geometry width to it's height.
2_ Difference in the mesh concentration is useful for analysis of stress distribution, strain distribution and etc.
3_ Density of surface mesh can be affect on accuracy and time of calculation in your analysis.
4_ This mentioned way for mesh generation is only for 2D geometries and for 3D geometries you must apply Z direction in the calculation and also in this direction, for better meshing, the mesh criteria should be considered.
At final if you haven't HYPERMESH criteria, I can send for you.