As Christians this is something we definitely have to learn. I know I'm a victim of 'yes' escaping my mouth too often. Saying no is a learned expression.
I experienced this twice yesterday. There was definitely one person who shouldn't have been at cell yesterday, she turned up at mine, told me she was ill and I had my first instance of sending some one home successfully. I know that she really wanted to be at cell, but even Jesus wanted a rest some times.
I believe showing compassion to others is about knowing their needs. Jesus went to a solitary place in Matt 14:13 then showed compassion on the crowd (v14). He catered first for his needs, then the crowds needs.
We need to learn the line between looking after ourselves and being selfish. This involves missing events and staying in bed to get better.
The other incident I will mention is the way Christians tend to run to the aid of people who shout loudly. I'm not saying that we shouldn't try to help people in need, but when the cry is one of attention we need to learn to sit down for a second and reflect on why we are being called.
Next time you are tired, ill or just feeling horrid, think for a second, would you do better sitting at home for a few hours relaxing, or out about doing yourself inevitably more damage?
Next time you are called on, stop, think. You probably know the person who is calling you... Would it be helpful for you to stay where you are, or do you really need to go?
Learn to say no, and remember that compassion isn't just shown in what we can do physically.