Husband has nasty anger

He doesn’t hit me but he says really nasty things. I dont even fee i can be vulnerable with him because he is so mean when he is angry and he will use some of the things i confide in him. Once he goes off he doesnt stop, just goes on and on to the point where i start cursing him out too because i cant take it anymore. But he is so quick to apologize and say he didnt mean this or that and that he loves me etc. i have only been with him since i was 19. This feels wrong but im wondering is this normal in relationships? When he apologizes i cant forgive him quickly. It takes me a few days to process everything and try to move forward. Sometimes i cant even forget what he says, it just keeps replaying in my head for weeks.