It depends on the context and what you want to say.
"I have been living in London for five years" tells us that you are still living there and that you have been living there in one continuous time period.
"I have lived in London for five years" can (but does not have to) mean the same. So, it can mean that you currently live in London and that you have lived there for an uninterrupted period five years.
But it can also mean that you are not currently living in London, but that you have in the past lived there for a total of five years. And these five years do not have to refer to one continuous period of five years. They could refer to multiple past periods that add up to five years.
This is one reason we have both the present perfect and the present perfect continous: they do not mean the same. And even if they refer to equivalent situations (you live in London now and have for five straight years) the emphasis is different.