«Note that ValueType.Equals() performs well when the type consists of primitive values only (which should also be Value Types); it uses byte-by-byte comparison in this case. But in cases when your struct includes a reference type – and string is one of them – it falls back to using reflection to compare the instances field-to-field.»
ещё раз, люди, которые пишут код со структурами об этом знают, либо у них не получается 7М рпс с одной ноды