She's always been a pretty good top laner, just not popular there in the past. #1 best tip I have for dealing with her is: trade right after she Q's you. Akali prefers to trade about 4 seconds after she Q's you because the mark lasts 6 seconds, and has a 6-4 sec base cooldown, so what she does is: collect existing mark, throw another, collect that one for massive burst. Of course if her W is up, she will just drop that to avoid the bad trade, but now at least, you've drawn that out of her. Back off and wait for it go down, and her to Q you again, or the existing mark to disappear, then trade again (ideally before her W is back up). Post 6, she can 'force' the issue of you taking the double-mark combo by ulting to you, which makes her harder to deal with post-6. Yet again, drawing out her W is really helpful (because Akali prefers short trades, and is not exactly stellar at straight up all-ins from full health). Other than that, the majority of her damage is still magic, though her E is physical, so MR is helpful against her, especially in lane. You don't want to be too squishy or her burst-trades become extremely threatening. Having AoE's that you can put onto her W is also a great counter to her (she hates Riven top for that reason, also, Mundo W is a problem for her). Being able to reveal her out of stealth is also helpful (Lee Sin E is amazing against her).